This is a project to showcase my skills with Python and React.
This project is a user management system that allows users to perform CRUD operations (Create, Read, Update, Delete) on a list of users. It consists of two main parts: a back-end API built with Flask and Python, and a front-end user interface built with React and TypeScript.
The back-end API is responsible for managing the user data, including fetching, creating, updating, and deleting users.
It includes unit tests written with the unittest
Python package, and uses data management
techniques such as dictionaries and data classes to handle the user data.
You can find more specific information about the back-end in its specific README. The back-end also includes a collection of requests for testing the API using Insomnia.
The front-end user interface is responsible for interacting with the user data managed by the back-end API. It allows users to view, create, update, and delete users. The user interface was built using React with TypeScript, and features error handling and user feedback. The design of the user interface was done using the Ant Design library.
You can find more specific information about the front-end in its specific README.
This project showcases a number of skills that are useful in software development:
- Unit testing: the back-end API includes unit tests, which are fundamental for ensuring code quality and preventing regressions.
- TypeScript: the front-end user interface was built using TypeScript, which helps ensure code quality and maintainability by catching errors at compile time rather than runtime.
- React: the front-end user interface was built using React, which is currently the most popular frontend library and is widely used in industry.
- Git and documentation: As demonstrated from this README and the whole github repo, this project also demonstrates my skills utilizing a somewhat agile git workflow to work with other developers and collaborate.
- Python: the back-end API was built using Python, which is a versatile and widely-used programming language often used in web development.
To run the project, first make sure you have installed the necessary dependencies. You can do this by following the instructions in the backend/README.md
and frontend/README.md
files.
Once you have installed the dependencies, you can start the back-end API by following the instructions in the backend/README.md
file. Then, you can start the front-end user interface by following the instructions in the frontend/README.md
file. Once both the back-end and front-end are running, you can interact with the user interface and perform CRUD operations on the user data.