# jwasham/computer-science-flash-cards

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/jwasham-computer-science-flash-cards).**

9,101 stars · 2,102 forks · HTML · CC-BY-SA-4.0

## Links

- GitHub: https://github.com/jwasham/computer-science-flash-cards
- awesome-repositories: https://awesome-repositories.com/repository/jwasham-computer-science-flash-cards.md

## Description

This is a computer science flashcard web application designed for memorizing algorithms, data structures, and general technical concepts. It functions as a spaced repetition study tool that organizes academic materials by category and mastery level to track knowledge acquisition.

The application is provided as a containerized educational tool, allowing for self-hosted deployment to ensure consistent execution across different systems. It includes a utility to export stored study sets and academic content into CSV files for use in external applications.

The platform covers content management for creating and editing flashcard sets, as well as learning management through a web interface that supports category-based filtering. Access to study materials and management tools is restricted via user authentication.

## Tags

### Education & Learning Resources

- [Spaced Repetition Systems](https://awesome-repositories.com/f/education-learning-resources/spaced-repetition-systems.md) — Implements a learning interface using spaced-repetition logic to track knowledge acquisition of technical concepts.
- [Computer Science Concepts](https://awesome-repositories.com/f/education-learning-resources/technical-domain-education/computer-science-education/computer-science-concepts.md) — Provides flashcards covering foundational data structures and algorithmic methodologies in computer science. ([source](https://github.com/jwasham/computer-science-flash-cards#readme))
- [Custom Study Material Management](https://awesome-repositories.com/f/education-learning-resources/custom-study-material-management.md) — Allows creation and organization of personalized technical flashcards with data export capabilities.
- [Flashcards](https://awesome-repositories.com/f/education-learning-resources/educational-resources/reference-and-media/tutorials-media-curated-lists/interactive-learning-media/flashcards.md) — Provides digital study aids designed for spaced repetition and memorization of technical concepts. ([source](https://github.com/jwasham/computer-science-flash-cards/blob/main/README.md))
- [Flashcard Content Management](https://awesome-repositories.com/f/education-learning-resources/flashcard-content-management.md) — Provides tools to create, update, and delete study cards and maintain mastery status. ([source](https://github.com/jwasham/computer-science-flash-cards/blob/main/flash_cards.py))
- [Flashcards](https://awesome-repositories.com/f/education-learning-resources/flashcards.md) — Ships a web application using spaced-repetition flashcards for memorizing computer science concepts.
- [Question and Answer Sets](https://awesome-repositories.com/f/education-learning-resources/question-and-answer-sets.md) — Presents academic questions and answers through a web interface for targeted study. ([source](https://github.com/jwasham/computer-science-flash-cards/blob/main/flash_cards.py))
- [Study Material Filtering](https://awesome-repositories.com/f/education-learning-resources/deep-learning-curriculum/deep-learning-fundamentals/study-materials/study-material-filtering.md) — Segments flashcards by category or mastery level to focus on specific unlearned material. ([source](https://github.com/jwasham/computer-science-flash-cards/blob/main/flash_cards.py))
- [Self-Hosted Study Environments](https://awesome-repositories.com/f/education-learning-resources/self-hosted-study-environments.md) — Provides a private study application that can be deployed on personal infrastructure using containers.

### Content Management & Publishing

- [Flashcard Management](https://awesome-repositories.com/f/content-management-publishing/documentation-knowledge-management/personal-knowledge-bases/flashcard-management.md) — Implements create, read, update, and delete operations for a personalized knowledge base of flashcards.
- [Study Material Filtering](https://awesome-repositories.com/f/content-management-publishing/category-organizations/study-material-filtering.md) — Allows users to isolate specific subsets of flashcards by topic or mastery level.

### Data & Databases

- [Knowledge Retention Tools](https://awesome-repositories.com/f/data-databases/technical-knowledge-bases/knowledge-retention-tools.md) — Supports mastering complex coding patterns and definitions via a web interface with progress tracking.

### DevOps & Infrastructure

- [Container Deployment](https://awesome-repositories.com/f/devops-infrastructure/container-deployment.md) — Provides a containerized image to ensure consistent execution across different hosting environments.
- [Containerized Application Deployments](https://awesome-repositories.com/f/devops-infrastructure/containerized-application-deployments.md) — Provides a full application environment packaged as a portable container image for consistent self-hosted deployment.
