Skip to content

Latest commit

 

History

History
103 lines (81 loc) · 9.8 KB

README.md

File metadata and controls

103 lines (81 loc) · 9.8 KB

DevClub Summer of Code 2023

DevClub IIT Delhi is organising DevClub Summer of Code 2023, so students can learn development together in the summers! You can choose from any of the 4 tracks App, Backend, Frontend, Machine Learning.

For each track, there will be a 4-week long project on a common theme, divided into weekly guided assignments, where we will be providing resources so you can learn, build and showcase!

We will be giving attractive rewards to those who participate enthusiastically, and also recruiting members to join the DevClub Team!

  • Tracks
    • App Development
      • Week 1: Learn Flutter and build a UI using Stateful and Stateless Widgets
      • Week 2: Dive deeper into Flutter's Widgets by building ProductTile, Promoted product banners and implementing forms. Make the app dynamic and interactive!
      • Week 3: Communicate with server resources and manage product data using HTTP methods. Enhancing our app's capabilities for seamless product management and smooth data handling
      • Week 4: Implement Firebase user authentication, integrate cloud storage for image handling and explore Stripe for seamless payments
    • Backend Development
      • Week 1: Learn how a backend works by analysing a real-world website, and then make your own backend, using raw Python & SQL and use it to create a simple URL shortener
      • Week 2: Setup a Django backend server, and learn database models, rendering templates, user authentication and forms. Bonus: make it production-ready!
      • Week 3: Convert your Django backend into a REST API, and learn about function based views, JWT authentication and documentation with Postman. Bonus: make it enterprise-grade!
      • Week 4: Deploy your Django project on Microsoft Azure cloud platform, and learn about virtual machines, domain names and HTTPS.
    • Frontend Development
      • Week 1: Learn how websites work using DevTools, and then learn how to build a simple static website using HTML and CSS, taking designs from Figma and host it on GitHub Pages
      • Week 2: Use Javascript to create a repository network analyzer consuming the GitHub API, and use Bootstrap to make our previous webpage responsive!
      • Week 3: Learn ReactJS, and make your website better using JSX components and State management. Bonus: improve the code quality too!
      • Week 4: Design pages to render, create, and update products. Fetch this data from a public API and understand the interface using API specs. Learn about status codes, state management, error handling, and much more!
    • Machine Learning
      • Week 1: Set up an ML environment to run your code on GPUs, then select and build a price prediction model, and also scrape your own dataset for it from the web.
      • Week 2: Use YOLO to identify and describe items to be sold from the pictures, and fine-tune your Object Detection model using your own dataset
      • Week 3: Develop a model that automatically detects, aligns, and enhances images uploaded by sellers in an online marketplace, using techniques such as image recognition, rotation, and image enhancement
      • Week 4: Develop a chatbot designed for a marketplace website, capable of effectively addressing and resolving buyer queries and complaints, by utilizing a well-organized dataset, NLP frameworks and integration for a seamless user experience
  • How to Participate
  • Aim
  • Theme and Project
  • Rewards
  • Connect
  • Disclaimer

How to Participate

  • First of all, make a GitHub account, if you haven't already!
  • Fork this repository. This will give you a copy of this repository, where you can upload your work too. Make sure to sync latest changes whenever your fork falls behind ours. Later, you should install git, setup ssh keys, and clone your fork on your local machine.
  • Edit author.json to include your details so we can identify you. Feel free to include other details like discord_id, phone_number, email_id etc
  • Check out each track from their folder, and explore about them. You can try multiple tracks too!
  • Each week, we will share resources to learn concepts for each track step-by-step, along with small assignments which will add up to a project
  • We will also be having online lectures or discussion sessions, to help you learn better
  • Upload your submissions for each week to the respective folder
  • Join our Discord server for any queries, discussions, and to stay up-to-date!
  • Once you're done, create a Pull Request on the appropriate branch (most-starred, best-all-rounder, best-app, best-backend, best-frontend, best-machine-learning), and fill in the automatic template to make a submission!

Aim

We aim to help students get started with learning coding and software development. The concepts for each track are divided into weeks pedagogically so you can learn step-by-step.

No matter if you're a beginner or an expert, at each stage, you will be learning something new, and building something useful in real world. You will also be equipped with the skills and tools which would meet most tech requirements, and the final projects in each track will be good enough to be put in your portfolio or CV.

We are keeping the repository open to everyone from around the world, so everyone can use it to learn and share their ideas in the forks.

Theme and Project

This year's theme is... e-commerce!

Buying and selling of good has been key to the advent of civilization, it is an ever-growing and ever-evolving field, both utilizing and driving latest innovations and technologies.

Platforms today have made buying new items quick and as simple as a click, but what do we do with all the old stuff?

The projects in each track will revolve around this theme, and we are planning to build a platform where students can buy and sell items to each other.

Rewards

  • For students from IIT Delhi
    • From each track, we will be recruiting executive members for the DevClub Team
    • Certificates and ECAs to students who perform exceptionally well
  • We will also be sharing opportunities relevant to the tools we have covered here, and your submissions can serve as a proof of your skills
  • We will be showcasing the best projects in our Discord server and our social media handles
  • Chance to be part of the team for actually deploying this and launching for students on campus!
  • There will be a special award for the overall most starred fork!
    • The fork with the most number of stars ⭐ will receive a special mention and a certificate/ECA
    • You are expected to share about your work on social media and with friends, and ask them to star your fork if they liked it
    • To keep the game fair, we discourage any bots or fake users. So along with other measures, we'll be counting only those stars from users created before 2023-06-25
    • No more counting dollars, we'll be counting stars on 31st July 2023 11:59 PM IST
  • Another special award: best all-rounder!
    • To be eligible for this, you have to complete atleast 2 tracks. The more the better
    • We will give this award to the repository which shows the ability to wear multiple hats and excel in different tracks
    • The tracks need not be integrated into a complete as such, but would be appreciated if you are able to do so
  • The classic: best in track!
    • This will be given the to best submission in each track!
    • Incentives to submissions which were up-to-date with the deadlines and also for bonus tasks

For submitting your entries, create a Pull Request on the appropriate branch (most-starred, best-all-rounder, best-app, best-backend, best-frontend, best-machine-learning), and fill in the automatic template to make a submission! You should also create a demo video for each task and upload it on YouTube

The deadline for completing your projects and making the final commit is 31st July 2023 11:59 PM IST.

Note: You can create a Pull Request now and keep updating the branch with the commits as you make progress

Connect

Join our DevClub IIT Delhi Discord server using this invite and set your discord nickname to your GitHub handle

Don't forget to introduce yourself, talk about your background with tech, and what you're working on and hoping to learn!

Also follow our YouTube channel @DevClubIITD and Instagram handle @devclub_iitd

Star ⭐ this repo, if you found this useful 😄

Disclaimer

DevClub is an official technical club under CAIC, IIT Delhi. It is also the Google Student Developer Club chapter for Indian Institute of Technology - Delhi.

We have no other associations with any external organisation, and all our learning resources are free of cost for all students.