Skip to content

Repository files navigation

🧩 Mini Projects Collection

This repository contains a curated set of small-scale projects and academic experiments developed as part of my learning journey in computer science. Each subproject demonstrates a specific concept — from basic I/O and GUI design to digital logic, data structures, embedded systems, and low-level assembly programming.

These projects span multiple languages including C, Python, Verilog, Solidity, ARM Assembly, and Arduino, and are organized for easy exploration and reuse.

📁 Project Structure

mini-projects/
├── voting-software/            # Terminal-based voting system in C
├── dsa-music-player/           # Music queue player using DSA concepts in C
├── converter-tkinter/          # Currency & temperature converter using Python Tkinter
├── if-else-parser/             # Syntax validator for if-else structures using PLY (Python Lex-Yacc)
├── shift-register-verilog/     # Bitwise shift logic using Verilog HDL
├── ngo-donation-demo-solidity/ # Smart contract trial for NGO donations using Solidity
├── Assembly-Codes/             # ARM assembly language experiments and algorithms
├── C-DSA-Basics/               # Collection of basic DSA programs in C
└── Simple-Arduino/             # Basic Arduino codes and sensor-actuator experiments

🔍 Project Details

🗳️ voting-software/

  • Language: C
  • Description: A simple command-line voting system supporting multiple candidates and vote tallying.
  • Highlights: Input validation, file-based storage, terminal navigation.

🎵 dsa-music-player/

  • Language: C
  • Description: Simulates a music player queue using arrays or linked lists. Demonstrates use of DSA (like queue/stack).
  • Highlights: Dynamic queue logic, command-driven interface.

🌡️ converter-tkinter/

  • Language: Python (Tkinter)
  • Description: Desktop GUI application to convert currencies and temperatures.
  • Highlights: Tkinter GUI design, modular functions, two-in-one utility.

🧠 if-else-parser/

  • Language: Python (PLY - Lex/Yacc)
  • Description: A lexical analyzer and parser for validating the syntax of if-else statements written in a pseudo programming language.
  • Highlights:
    • Tokenization using ply.lex
    • Grammar parsing using ply.yacc
    • Validates nested and flat if-else constructs with custom rules
    • Educational showcase of CFGs (Context-Free Grammars)

🔁 shift-register-verilog/

  • Language: Verilog
  • Description: Simulates shift-left and shift-right operations using registers and arrays.
  • Highlights: Bitwise logic, testbenches for simulation.

🧪 ngo-donation-demo-solidity/

  • Language: Solidity
  • Description: Trial project exploring smart contract development for a decentralized NGO donation platform.
  • Highlights:
    • Donor & NGO registration and validation
    • INR to ETH conversion logic (mocked)
    • Donation history tracking and blacklist mechanism
    • Built for learning Solidity basics like struct, mapping, and payable

⚙️ Assembly-Codes/

  • Language: ARM Assembly
  • Description: Collection of low-level assembly programs showcasing simple tasks and algorithms such as array operations, matrix addition, searches (linear, binary), bitwise operations, display logic for seven-segment modules etc.

📄 C-DSA-Basics/

  • Language: C
  • Description: A collection of programs covering fundamental data structures and algorithms concepts.
  • Highlights:
    • Arrays, linked lists (singly & doubly), binary search trees (BST), stacks, queues, and tries.
    • Demonstrates insertion, deletion, searching, sorting, and merging operations.
    • Useful as reference snippets or practice material for interviews and coursework.

🔌 Simple-Arduino/

  • Language: Arduino (C/C++)
  • Description: Basic Arduino programs and sensor-actuator experiments.
  • Highlights:
    • Simple codes for buzzer, RGB LED, servo motor, soil moisture sensor.
    • Combined example integrating ultrasonic sensor, buzzer, and servo.

🛠️ Tech Used

  • C, Python, Verilog, Solidity, Arduino (C/C++)
  • Terminal I/O
  • GUI with Tkinter
  • PLY (Python Lex-Yacc)
  • HDL simulation tools (ModelSim or online simulators)
  • ARM assembler tools

📚 Purpose

These projects serve as foundational exercises, useful for:

  • Reinforcing concepts in systems programming and logic design
  • Quick references for future work

📄 License

This repository is licensed under the MIT License.
You are free to use, modify, and distribute with proper attribution.

🙋‍♂️ Author

Made with ❤️ by Naga Saketh V
Find more at my GitHub profile

About

A curated collection of small-scale projects, academic experiments, and concept demos built using C, Python, Verilog etc.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages