This project is a core component of our 8th grade data science curriculum, designed to provide students with an interactive platform to enhance their understanding of data analysis and visualization. It allows students to create and share their data visualizations, post screenshots, and provide constructive feedback to their peers—all within a virtual learning environment. By fostering a culture of collaboration and peer review, the project helps students develop essential skills in data literacy, critical thinking, and effective communication.
The current iteration of this project is called DataDeck, which is accessible at www.datadeck.dev. DataDeck is an evolving platform that, in its future state, aims to become a comprehensive Flipgrid alternative, incorporating a range of features including voice, images, text, and video to facilitate richer interactions and discussions.
This project is being developed and maintained by PREP-KC high school students, under the guidance of their in-house developer. It's part of an educational initiative aimed at providing real-world experience to students in software development and open-source collaboration. The primary goal is to create an accessible and effective platform that replaces the functionality of Flipgrid, while tailoring it specifically to the needs of our educational environment. By focusing on features like data visualization sharing, peer feedback, and various multimedia capabilities, we are building a tool that is both versatile and impactful for students and educators alike.
This project was developed in response to the discontinuation of Flipgrid, which had been a valuable tool for our 500+ students taking the 8th grade data science course. With Flipgrid going away, we saw the need to create an educational alternative—one built by educators and students, for educators and students. DataDeck is designed to meet the specific needs of our learning community, providing a familiar yet improved experience that supports meaningful engagement and communication.
This project is a Django-based project built on Python 3.
Make sure Python 3 is installed and run the following commands to install Django and other required packages:
pip install -r requirements.txt
To set up the database for the first time, run:
$env:USE_MYSQL="FALSE"; python manage.py migrate
To create a superuser for accessing the Django admin interface, run:
$env:USE_MYSQL="FALSE"; python manage.py createsuperuser
To start the development server, run:
$env:USE_MYSQL="FALSE"; python manage.py runserver
To use MySQL (connecting to your PythonAnywhere database):
USE_MYSQL=true python manage.py runserver
To collect static files for deployment, run:
python manage.py collectstatic
Creates a session with tons of example vizzes
python manage.py loaddata initial_data.json
Celery Worker - No need to run currently:
celery -A datadeck worker --loglevel=info
celery -A datadeck beat --loglevel=info
We welcome contributions from anyone interested in supporting this project! Whether it's improving the documentation, fixing bugs, adding new features, or helping with other tasks, your efforts are greatly appreciated.
If you're new to open source contributions, don't worry. This project is a learning environment, especially for students who are gaining hands-on experience. We aim to make the contribution process simple and supportive.
To keep things simple, we recommend that students pull directly from the main branch. This helps ensure everyone is working with the latest version of the project. However, for external contributors or more complex contributions, follow these steps:
git checkout -b feature/new-feature
).git commit -m 'Add new feature'
).git push origin feature/new-feature
).Please note that we have a Code of Conduct in place. All contributors are expected to adhere to it.
This project is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License. Feel free to use and modify the project, but make sure to include the original attribution and abide by the non-commercial terms.
For questions or suggestions, please reach out to us:
For more information, visit PREP-KC's website.
We appreciate your interest and look forward to building a great project together!
Together, we're not just creating a platform; we're fostering a community of young data scientists and developers. By contributing to DataDeck, you're helping to shape the future of education technology and empowering students to become data-literate citizens. Whether you're a student, educator, or professional developer, your insights and efforts can make a real difference. Let's collaborate, innovate, and inspire the next generation of data enthusiasts. Join us in this exciting journey of learning, creation, and positive impact!
We welcome contributions from external contributors. Here's a list of suggested issues and future features we're considering. These items represent our current backlog and areas where we'd appreciate community input and assistance:
These features are part of our vision to make DataDeck a comprehensive and engaging platform for data science education. We encourage contributors to tackle these issues or propose new ideas that align with our project goals.