Empowering Minds Through Interactive Learning Experiences and Seamless Progress Tracking.
EduCraft is not just another Learning Management System (LMS); it's a passion project born out of a desire to revolutionize the educational experience. Inspired by the challenges faced in traditional learning environments, EduCraft was envisioned as a tool to make education interactive, engaging, and tailored to individual needs.
For a live demo, visit EduCraft Demo.
Read about the journey and development process in our Final Project Blog Article.
Authors:
The seed for EduCraft was planted during late-night brainstorming sessions, fueled by the frustration of conventional LMS platforms lacking the spark to truly engage students. We envisioned an immersive learning environment where students could explore subjects through interactive games and activities.
Technical Challenges and Solutions
-
Choosing Flask for Flexibility: EduCraft's foundation is built on Flask, a micro web framework for Python. The decision was rooted in its simplicity, flexibility, and the ability to scale seamlessly as the project evolved.
# Example code snippet from EduCraft from flask import Flask, render_template app = Flask(__name__) @app.route('/') def home(): return render_template('index.html')
-
Interactive Dashboards with Plotly: One of the challenges was creating dynamic and visually appealing dashboards to track student progress. We turned to Plotly for its expressive capabilities, allowing us to visualize data in real-time.
# Code snippet showcasing Plotly integration import plotly.express as px fig = px.bar(data, x='subject', y='progress', color='student', title='Student Progress Overview')
-
User Authentication with Flask-Login: EduCraft needed robust user authentication to ensure a personalized experience. Flask-Login proved to be the ideal solution, providing seamless integration with Flask.
# Flask-Login integration in EduCraft from flask_login import LoginManager, UserMixin, login_user login_manager = LoginManager(app)
EduCraft is more than lines of code; it's a reflection of countless late nights, passionate discussions, and shared frustration with the status quo. As you explore the project, remember there's a human behind every commit, someone who believes in the power of education to transform lives.
While developing EduCraft, we faced challenges—bugs that seemed impossible to squash, design choices that kept us up at night, and moments of self-doubt. This project is a testament to perseverance and continuous learning.
In the next iteration, we plan to enhance user interactivity, introduce AI-driven recommendations, and expand the range of subjects. We invite the community to contribute ideas and code to make EduCraft even more impactful.
To run EduCraft locally, follow these steps:
-
Clone the repository:
git clone https://github.com/Abdulazeez41/EduCraft.git
-
Navigate to the project directory:
cd EduCraft
-
Create a virtual environment:
python3 -m venv venv
-
Activate the virtual environment:
-
On Windows:
.\venv\Scripts\activate
-
On Unix or MacOS:
source venv/bin/activate
-
-
Install dependencies:
pip3 install -r requirements.txt
-
Run the application:
python3 manage.py
The application will be accessible at
http://localhost:5000
by default.
EduCraft offers a dynamic learning experience. Explore the various educational games and activities, track progress through interactive dashboards, and witness the power of personalized education.
We welcome contributions from the community. If you'd like to contribute to EduCraft, please follow the guidelines in CONTRIBUTING.md.
Please make sure to follow our Code of Conduct.
Check out these related projects:
EduCraft is licensed under the MIT License.