Skip to content

acm-avv/request-for-code

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

Projects from Scratch

Project Index

Project ID Project Name Key Technologies
ASOC1 Project_Proposals.pdf (Multiple Projects, see sub-sections)
ASOC1A To-Do List and Employee Collaboration Application Details in PDF
ASOC1B Chair Booking System Details in PDF
ASOC1C Raw Material Management System Details in PDF
ASOC1D Recipe Management System Details in PDF
ASOC1E Employee Management System Details in PDF
ASOC2 Local-First Desktop App To Ease Ops with Cloudflare React, Tauri, Rust, Cloudflare SDKs, cURL
ASOC3 Self-Hostable Podcasting Platform React, TypeScript, ShadCN, Tanstack Router, Express, DrizzleORM, Zod, PostgreSQL, FFMPEG, WebRTC, WebSockets, Minio, Podman, Nomad, TurboRepo
ASOC4 Ads Exchange Solana
ASOC5 Lost and Found Mobile App Flutter, Microsoft oAuth
ASOC6 Swipe a Dev - Mobile App React Native or Flutter, golang, postgreSQL, sqlc, ozzo-validation, kafka, GitHub APIs
ASOC7 CLI-based tool for WebSocket Load Testing Golang
ASOC8 FFMPEG based Simple Video Editing Tool Golang, FFMPEG, Charm's packages
ASOC9 Rust SDK for Cloudflare v4 REST APIs Rust, Cloudflare APIs
ASOC10 Cursor for Whiteboarding with Native-Git Integration Reactflow, React, Tauri, Gemini API, git
ASOC11 YouTube Video Chatbot yt-dlp, TurboRepo
ASOC12 Digital Collectibles / NFT Platform Holopin, Metaplex, Solana, NFTs
ASOC13 Gamified 2D Metaverse Working Space PhasorJS, WebSockets, WebRTC, React.js, Tanstack, Golang, Gorilla/websockets, pion/webrtc, gin-gonic, MongoDB or Cassandra, PostgreSQL
ASOC14 Drag-n-Drop and HTML Email Template Builder localStorage, Browser APIs
ASOC15 Fully Anonymous Idea Validation Platform N/A
ASOC16 CareConnect.pdf Details in PDF
ASOC17 HTTP-SSH-APP HTTP, HTML, JS, CPP

Vishwa A V (5 projects) (TBD repos) (Ashwin)

ASOC1A: To-Do List and Employee Collaboration Application

  • Details in the PDF.

ASOC1B: Chair Booking System

  • Details in the PDF.

ASOC1C: Raw Material Management System

  • Details in the PDF.

ASOC1D: Recipe Management System

  • Details in the PDF.

ASOC1E: Employee Management System

  • Details in the PDF.

ASOC2: Local-First Desktop App To Ease Ops with Cloudflare

(1 project) (1 repo) (Ritesh)

  • Desktop App - React (not Next.js), Tauri (Rust)
  • Cloudflare SDKs and cURL integration for easy of use
  • Local-First Approach. No backend servers. Should be a convenience for developers to facilitate development securely.

ASOC3: Self-Hostable Podcasting Platform

(1 project) (1 monorepo) (Ritesh)

  • A platform similar to https://riverside.fm
  • Web App - React (not Next.js), TypeScript, ShadCN, Tanstack Router etc.
  • Backend App - Express, DrizzleORM, TypeScript, Zod, PostgreSQL
  • Others - FFMPEG, WebRTC, WebSockets, Transcoding Pipelines, Minio (or pluggable s3-compatible file-storage storage), CDNs
  • Manage entire distributed system via Podman and Nomad (alternative to Docker + K8s)
  • The entire project needs to be packed in a single repository using TurboRepo (the monorepo framework)

ASOC4: Ads Exchange

(1 project) (4 repos) (Ritesh + others)

  • Need a platform which can commoditize Ad-Spaces and make them available as assets on a marketplace.
  • Think of Google Ads but decentralized. Your platform must
  • Repo 1: UI components which can be used to show the advertisement.
  • Repo 2: Exchange Front-end to list out all AdSpaces available and how to rent them out for X number of hours
  • Repo 3: Interaction with Solana blockchain to make micro-transactions based on billable hours
  • Repo 4: Interaction of individual UI components in different websites and the Ads that they need to show at different hours of the day based on the bookings.

ASOC5: Lost and Found Mobile App

(1 project) (2 repos) (Ritesh)

  • Need a simple Flutter (android and ios) mobile app and backend which can allow different blocks (Academics, Canteen, Library, etc) to list out the "lost-items" reported to them
  • Students and teachers can gain access to this app via Microsoft oAuth and then claim their articles.
  • Only admins should be able to upload pictures and add details on "How to claim".
  • Should be easy to use and deployable within this semester.

ASOC6: Swipe a Dev - Mobile App

(1 project) (2 repos) (Ritesh)

  • Often times we are looking for new developers to work with for different projects
  • Often times project ideas are existing but finding students to work with is difficult for faculties
  • A mobile application which can allow
    • Project announcement (feed)
    • Left-swipe and right-swipe mechanism for matching with devs for individual projects
  • The interface should be similar to dating apps to make things fun and interesting
  • Mobile App can be built using React Native or Flutter
  • Backend can be built in golang, postgreSQL, sqlc, ozzo-validation, kafka, matching algorithms, GitHub APIs etc.

ASOC7: CLI-based tool for WebSocket Load Testing

(1 project)(1 repo)(Ritesh)

  • This has been a personal pain-point where I have looked for a websocket alternative to Bombardier (Go).
  • The only alternative I have found is Mjolnir which seems to be a dead and unmaintained project for over 8 years.
  • A new project which can handle this would be useful in the ecosystem and avoid writing k6s scripts for quick load-testing of websocket endpoints. Write it in Golang as it had got great packages for such tools.

ASOC8: FFMPEG based Simple Video Editing Tool

(1 project)(1 repo)(Ritesh)

  • A TUI based tool which can utilize FFMPEG's capabilities to offer a simple and feature complete video editing solution without the need of fancy video editing software like DaVinci Resolve for Linux.
  • Keeping it simple and lightweight, build this in Golang using `Charm's packages

ASOC9: Rust SDK for Cloudflare v4 REST APIs

(1 project)(1 repo)(Ritesh)

  • Self-explanatory

ASOC10: Cursor for Whiteboarding with Native-Git Integration [ Excalidraw + AI + Git]

(1 project) (2 repo) (Ritesh and Ashwin)

  • A node-based editor using Reactflow or an open-canvas with scribble-pad like features (or both) which can work as a local-first desktop application built using React and Tauri
  • Can operate with LLM models to generate ideas and convert them into diagrams
  • Allow users to add in API tokens from Gemini if they wish to keep it completely local-first.
  • Or offer a cloud based backend with product subscription model where users can make X number of chats everyday while generating diagrams of their technical projects.
  • The entire canvas should be in an exportable file-format with native-git integration for version control. (look at how Bruno, the API testing tool does it for reference)

ASOC11: YouTube Video Chatbot

(1 project)(1 repo)(Ritesh)

  • The user drops the link to popular youtube videos
  • The transcript is extracted via yt-dlp
  • RAG application allows you to converse with the transcript
  • The difficult bits here are to retrieve and parse the entire transcript. Clean it and then make it available to users.
  • Use a TurboRepo to build it if it has different parts and asynchronous backends working individually to support the system.

ASOC12: Digital Collectibles / NFT Platform

(1 project)(1 repo)(Ritesh)

  • With the introduction of Badges this year at ACM's Summer of Code, it would be interesting to see a collectibles platform similar to Holopin that can dispatch badges to people via CDN.
  • A simpler designer portal to create and launch new badges
  • Allowing people to show-case profiles filled with badges from past seasons
  • Dispatching badges to GitHub READMEs
  • Making the badges as NFTs can help in making them tamper-proof and making the source verifiable. Checkout Metaplex with Solana for building this.

ASOC13: Gamified 2D Metaverse Working Space

(1 project)(2 repo)(Ritesh)

  • A platform similar to https://gather.town
  • Use PhasorJS to build out the 2D animated components
  • WebSockets and WebRTC for chats and video servers
  • REST API servers for auth, creating new spaces, inviting people to a space
  • Would be interesting to see editable / extendable workspaces with an inventory of decoratives
  • Use React.js and rely on React Server Components via Tanstack if SSR is required due to the heavy rendering nature of this application. Avoid Next.js bloat at all costs and use Tanstack Router, Query, Store and Forms
  • Keep the backend in Golang as there is great support for Websockets (Gorilla/websockets) and WebRTC (pion/webrtc) and API (gin-gonic)
  • A combination of SQL and NoSQL databases would make sense here. Would love to see people building with MongoDB or Cassandra along with PostgreSQL.

ASOC14: Drag-n-Drop and HTML Email Template Builder

  • Build a platform similar to https://stripo.email/
  • Goals would be to provide the drag and drop editor and utilize localStorage or other browser-based storage units to allow a no-nonsense, no-signup, browser-only experience for writing and exporting beautiful emailing templates
  • The entire conversion engine needs to be built on top of Browser APIs
  • Add templates for simple events and newsletters.
  • Post MVP, the project can be extended to support people to create profiles, store their drafts in the cloud and add further templates as a community driven effort.

ASOC15: Fully Anonymous Idea Validation Platform

  • As builders, oftentimes we have projects or ideas that we need to validate from our peers but are hesitant to approach out of insecurities, getting mocked, or looked down upon.
  • Build a platform where folks could sign-up and provide feedback on idea posts.
  • Ideas could be posted as a diagram + title + description
  • The ideator's identity remains anonymous
  • The validator's identity can either remain anonymous or they can choose to be seen.
  • Add some filtering to phase out useless or immaterial feedback. (also filter out objectionable / NSFW content)

Vishwa A V (1 project) (TBD repos) (Ashwin)

  • Details in the PDF.

ASOC17: HTTP-SSH-APP

(1 project) (1 monorepo) (Ashwin Narayanan S)

  • The core function is to allow a user to execute commands on a remote server machine.
  • Unlike traditional SSH, commands and their outputs are transmitted between the client and server using the HTTP protocol.
  • A server application runs on the target machine, listening for incoming HTTP requests containing commands, executing them via the operating system's shell, and capturing the output (stdout, stderr, return code).
  • A user interface, typically a web page, serves as the client. It allows the user to input commands, send them to the server via HTTP requests, and display the received output.
  • It mimics the capability of executing shell commands remotely like SSH, but uses standard web technologies (HTTP, HTML, JS) instead of the dedicated SSH protocol.
  • Interestingly we can try n build a CPP server for this!

About

Contains a list of project ideas from scratch.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published