This is a front-end project of a library that was developed with Vue.js. The project was developed with the intention of showcasing my skills with Vue.js and web application development.
Our system allows users to register and log in, ensuring that only authenticated users can perform certain operations within the site.
The system allows users to view, add, edit, and delete books. Books can be searched by title, author, publisher, or category.
The system contains a review system that allows users to rate books and view their reviews made.
Users can add books to a reading list, allowing them to keep track of the books they want to read and mark which books they have read or not.
The system supports several languages, allowing users to choose the language of their preference. Among them, we have:
- Portuguese
- English
- Spanish
The system allows users to choose between a light theme and a dark theme, allowing them to customize the appearance of the site according to their preferences.
The system is containerized using Docker, making it easy to deploy and scale.
I attach some site pics for better visualization, but the site have more implementations, so fork the project and explore
This project requires the following dependencies:
- Clone the repo
git clone https://github.com/otaaaviio/library.git
- Run the following command to build the project in first time
docker compose build --no-cache
- Run the following command to start the project
docker compose up -d
Now you can access the project.
Available on:
library-vue | http://127.0.0.1:8080
library-vue | http://172.21.0.2:8080
api/
├── assets/
├── components/
├── enums/
├── interfaces/
├── layouts/
├── locales/
├── pages/
├── plugins/
├── router/
├── stores/
|── styles/
app.vue
main.ts
This structure suggests a web application project that uses a modular architecture, with a clear separation between different parts of the code, such as components, pages, styles, and business logic (API). If you need more details or help with something specific from this project, feel free to make a ask issue!
- Vue.js - The Progressive JavaScript Framework
- Vuetify - Material Design Component Framework
- Axios - Promise based HTTP client for the browser and node.js
- Vue i18n - Internationalization plugin for Vue.js
Fork the project and create a pull request.
I hope you enjoyed the project, if you have any questions or suggestions, feel free to contact me. This project serves as a sample of my work with Vue.js and web application development, you can see the back-end repository here
- Otávio Gonçalves - linkedin