Code test made by the company CodeLeap, to create a web application based on a basic layout, following the required functionality.
The app is very simple and works as a small social network (network) for people to enter and create posts.
The following tools were used in building the project:
- π NextJS
- π ReactJS
- π TypeScript
- π Chakra UI
- π Radix UI
- π ReactHookForm
- π ReactQuery
- π Yup
- π React Scroll
- π React Icons
- π Sass
- π Axios
- π DateFNS
- π Nookies
- π Jest
- π Testing Library
- π AnimateOnScroll
- π FaunaDB
- π Bcrypt
- π Jsonwebtoken
π€ Project Status π Complete! π€
Access at the address: https://codeleap-chi.vercel.app
These instructions will get you a copy of the full project up and running on your local machine for development and testing purposes.
The project can be built with npm or yarn, so choose one of the approach bellow in case you don't have any installed on your system.
-
Npm is distributed with Node.js which means that when you download Node.js, you automatically get npm installed on your computer. Node.js
-
Yarn is a package manager built by Facebook Team and seems to be faster than npm in general.
- β Sing in with email and password;
- β Registration of a user, password encryption with Bcrypt;
- β Verification of an existing user;
- β FaunaDB database connection;
- β User authentication and jwt token generation;
- β Update user data with password confirmation;
- β Implementation of automatic redirect if user is "Logged in" (with username) via withSSRGuest;
- β Implementation of automatic redirect if user is not "Logged in" (with username) via withSSRAuth;
- β Toast notification for user;
- β Loading screen for the data request to happen;
- β Input animations for elements;
- β Save user username in cookies;
- β Data caching with react query;
- β Scroll to go back to top;
- β http requests with axios to django api;
- β List of posts;
- β Form Validation with Yup;
- β Form control with React Hook Form;
- β Date formatting with date-fns;
- β Deleting a post;
- β Editing a post;
- β Post pagination;
- β User choose the amount of posts they want to see per page;
- β Adding Unit Tests with Jest and Testing Library;
- β Using Context API to control user methods and data;
- β Interface developed with system Chakra UI and Radix UI design;
- β Responsiveness with mobile devices;
- β Modern design;
- β Deploy in Vercel.
- To download the project follow the instructions bellow:
1. git clone
2. cd codeleap-app
- Install the dependencies and start:
3. yarn
4. yarn dev
- or
3. npm install
4. npm run dev
- Have fun just like me while programming
- Sign in
- Sign up
- Network
- Network
- Modal Delete
- Modal Edit
- Account
- Modal Confirm Account
Luiz Felipe S. Felizatti π―
Contact: