LearnTogether: Why learn alone?
Nowadays, many people prefer to self-learn. We are lucky that there are many online platforms to teach us new languages, coding skills, and pretty much every discipline of knowledge. But sometimes self-learning can make us a bit lonely. We need some motivation and support. LearnTogether is a platform for people who are self-learning to group together, support and help each other toward achieving their learning goals.
- LearnTogether is built with Ruby on Rails. It uses Object-relational mapping (ORM) for converting data between Ruby and MySQL database.
- LearnTogether follows the Representational State Transfer convention (REST) as a standard for communications between the server and browsers.
- LearnTogether uses Devise, a gem responsible for managing users and sessions. Devise uses Bcrypt, which salts passwords to protect passwords from rainbow attacks.
- LearnTogether also uses Bootstrap for styling, mobile responsiveness, and to provide a consistent experience across browsers.
- LearnTogether is deployed on Heroku.
- All images used on the website are published by others under Creative Commons License.
Possible Future Upgrades
- remove json syntax from controllers
- users authorization
- remove unused routes
- User Stories
- learn more / about page
- make distinction between public & private groups.
- Allow groups which need approval to join
- Mark some groups as for adults only
- Create different functionality between admins and super admins
- create clans
- create teams within groups
- Add calendars to groups
- Add tags
- search functionality
- Add a CMS / Admin website
- Add tests
- add inverse_of to all associations