Kidsworld is a children's story platform developed as a group project for the AXSOS Academy Dojo programming course. This application allows users to explore, read, and interact with various children's stories. Key features include user authentication, adding to favorites, search functionality, story details with PDF interaction, a rating system, and admin capabilities for managing stories.
- Frontend: HTML, CSS, SCSS, JavaScript, Bootstrap, jQuery
- Backend: Python, Django
- Libraries: Mixitup, PDF.js, Crispy Forms, AJAX
- Other Tools: Trello
The project is deployed on AWS. You can access it here.
- Django Authentication: Utilizes Django’s built-in user authentication system.
- Custom Forms: Forms customized using the crispy-forms library.
- Validation: Includes both frontend and backend validation.
- AJAX: Enhances user experience by avoiding page reloads during authentication processes.
- Watch Video
- Users can add stories to their favorites and remove them as needed.
- Watch Video
- Title Search: Allows users to search for stories by their titles.
- Category Search: Users can filter stories by category using the Mixitup library.
- AJAX: Implements AJAX for smooth and dynamic searching and filtering.
- Watch Video
- Story Details: Detailed view of each story including comments and ratings.
- PDF Interaction: Users can read or download stories in PDF format using PDF.js.
- Comments: Users can add, delete, and view comments on stories.
- Watch Video
- Story Rating: Users can rate stories.
- Average Rating: Each story’s average rating is dynamically updated based on user ratings.
- Watch Video
- Story Management: Admins can add new stories, view all stories, update existing stories, and delete stories.
- Watch Video
To run this project locally:
- Clone the repository: git clone https://github.com/Farhoud-Rand/KidsWorld.git
- Navigate to the project directory: cd kidsworld
- Create a virtual environment: python -m venv env
- Activate the virtual environment:
- On Windows: .\env\Scripts\activate
- On macOS and Linux: source env/bin/activate
- Install the dependencies: pip install -r requirements.txt
- Apply migrations: python manage.py migrate
- Run the development server: python manage.py runserver
- Open your web browser and go to http://127.0.0.1:8000/ to see the application in action.