Skip to content

learn-academy-2024-alpha/backend-learn-practicum

Repository files navigation

📝 Note Sharing Application

This application is the backend of a decoupled full-stack application that allows users to make notes and share those notes with other users.

🧱 Technologies and Versions

  • Rails API with a PostgreSQL database
  • Rails 7.1.3.2
  • Ruby 3.2.0
  • PSQL 14.10

✅ Onboarding to the App

  • To run the app in a development environment, clone the repository and run
    • bundle
    • rails db:setup
  • To spin up a local server run the command rails s
  • The application will run locally at http://localhost:3000/

⚙️ Testing

Testing is handled by RSpec

  • Run the test suite with command rspec spec
  • GitHub Actions will run a CI pipeline for testing and linting

🗄️ Data Models

  • User (from Devise): email, password, username
  • Note: title, content, public
  • Users have many notes
  • Notes have many users
  • Database Diagram

🫧 Linting

Check for linting errors in the project by running:

standardrb

Fix most lint issues in the project by running:

standardrb --fix

🤝 Application Dependencies

🗄️ Useful Resources

A few of the many resources that helped to build this application.

🚀 Deployment

  • The application is deployed on Render.com and available at this url
  • Build script in bin/render-build.sh
set -o errexit

bundle install
bundle exec rake db:migrate
bundle exec rake db:seed
  • CORS updates to be made when ready for production
# development
origins "http://localhost:3001"
# production
origins "https://frontend-learn-practicum.onrender.com"

About

Practicum project for LEARN Academy

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 7

Languages