Prisms Labs has put together this repository to help developers with project based learning. We maintain documentation outlining several different demo projects designed to explore a wide range of language and framework features. We also include a general docker configuration that will run PostgreSQL, MongoDB and Mailpit to aid in development. Each project contains detailed documentation including: overall project goals and scope, user stores, data relationships, api routes, pages, components and global state. We will also include a postman collection in each project so you can easily test the routes you build according to the documentation.
These projects are designed to implement a standard API allowing you to mix and match languages and frameworks while maintaining the same level of functionality. What this means is that we are not concerned with your UI page structure, or your specific controller logic, although you can reference completed examples listed in the project documentation if you are stuck. Ideally if you created several versions of the application in multiple languages or frameworks, the frontend and backend should be completely interchangeable.
We will create a virtual resume / portfolio site to showcase ourselves and our work as we continue to learn. This is a front end only project and is a good project for learning a new JS UI framework, design system or implement in vanilla HTML and CSS if you are just starting out in web development.
We will create a basic todo application that will alow users to perform CRUD operations on a list of TODO items. We will also create a basic dashboard that features a clock we program ourselves in JS and pull the current weather from an open and free API. This is a good project if you are just getting started in web development. The documentation for this project is broken into two stages, front end only where we store all our todo items in the browsers local storage and the second stage where we can optionally create an API to store the todo data and implement an authentication system.
This is a full stack blog application which has similar features to Medium or Dev.to. This is overall a well rounded project and a good option to choose if you are looking to explore web development more in depth, or if you are learning a new language or framework and want to explore its features. On the back end we will explore HTTP requests and data relationships in more complexity than in the Todo app. On the front end we will explore page routing and application state.
This is a full stack chat application which takes advantage of web sockets to perform real time bidirectional communication. This project is simple on the server but introduces you to a new way to communicate from client to server.
We have included a general docker environment to give you access to PostgreSQL, MongoDB and Mailpit. This allows you to build your projects with an SQL or NOSQL database, as well as test sending emails.
All commands must be ran in the docker
directory.
# Start environment
docker-compose up -d
# Stop docker environment
docker-compose down
# Reset data
rm -rf volumes
PostgreSQL
Host | localhost |
Port | 5432 |
Database | general |
User | user |
Password | password |
MongoDB
Host | localhost |
Port | 27017 |
User | user |
Password | password |
Mailpit
Host | localhost |
Port (SMTP) | 1025 |
Port (Web UI) | 8025 |
User | NULL |
Password | NULL |