The Anime Library Full Stack Project is a web application designed to allow users to browse, search, and manage a collection of anime series and movies. This project combines a user-friendly frontend with a robust backend to provide a seamless experience for anime enthusiasts.
- User Authentication: Secure login and registration system.
- Anime Catalog: Browse and search for anime series and movies.
- Anime Details: View detailed information about each anime.
- Favorites: Users can add anime to their list of favorites.
- Responsive Design: Mobile-friendly interface.
- Angular js: For building the user interface.
- Axios: For making API requests.
- Bootstrap: For responsive design.
- Spring Boot: For server-side development.
- MongoDB: As the database for storing anime data and user information.
- MySql: As a second choice for the database.
- Hibernate/JPA: For object data modeling (ODM).
- JWT: For user authentication.
To get a local copy up and running, follow these steps:
- Java 11 and Maven installed on your machine.
- MySQL installed and running.
-
Clone the repository:
git clone https://github.com/lotfi-el-yousfi/AnimeLibrary cd AnimeLibrary
-
Configure the database:
- Create a MySQL database named
anime_library
. - Update the
application.properties
file in thesrc/main/resources
directory with your MySQL credentials:
spring.datasource.url=jdbc:mysql://localhost:3306/anime_library spring.datasource.username=your_mysql_username spring.datasource.password=your_mysql_password spring.jpa.hibernate.ddl-auto=update spring.jpa.show-sql=true spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
- Create a MySQL database named
-
Build the project:
mvn clean install
-
Start the backend server:
mvn spring-boot:run
-
Navigate to the frontend directory:
cd ../frontend
-
Install frontend dependencies:
npm install
-
Start the frontend development server:
npm start
Build the Docker image using Docker Compose:
docker-compose build
Start the Docker container using Docker Compose:
docker-compose up
- Open your browser and go to
http://localhost:3000
to access the application. - Register a new user account or log in with existing credentials.
- Browse the anime catalog, view details, and manage your favorite anime.
anime-library/
├── backend/
│ ├── config/
│ ├── controllers/
│ ├── models/
│ ├── routes/
│ ├── middleware/
│ ├── .env
│ ├── server.js
│ └── package.json
└── frontend/
├── public/
├── src/
│ ├── components/
│ ├── pages/
│ ├── redux/
│ ├── App.js
│ ├── index.js
│ └── package.json
Contributions are welcome! Please follow these steps:
- Fork the project.
- Create a new branch (
git checkout -b feature/YourFeature
). - Commit your changes (
git commit -m 'Add some feature'
). - Push to the branch (
git push origin feature/YourFeature
). - Open a pull request.
Your Name - themessage3003@gmail.com
Project Link: https://github.com/lotfi-el-yousfi/AnimeLibrary