Skip to content
This repository has been archived by the owner on Sep 29, 2023. It is now read-only.

Currently in development, looking for students and passionate Open-Source Contributors interested in gaining real world experience, whilst simultaneously preparing for Data Structure and Algorithm based Interviews at Major Tech Companies.

License

Notifications You must be signed in to change notification settings

Dijkstra-Edu/Dijkstra-Monolith

Repository files navigation

Dijkstra

 

Dijkstra.orgForumDocsContributingLinkedInDiscord

GitHub Repo stars npm Website GitHub last commit (branch) GitHub contributors GitHub

Dijkstra - A one Stop Solution for all your CompSci educational needs!

Dijkstra aims to solve developmental gaps within the Student Community of Tier-2 and Tier-3 Colleges in India in the field of Computer Science by:

  • Bringing students together and creating a community for all who are passionate about learning computer science but are not sure how to go about it. Dijkstras application provides a community that is open-source by nature. It is run by students, for students, and provides a safe space for learning, collaboration, and mentorship, irrespective of who you are.
  • Defining a clear path to success, be it with improving fundamentals like data structures and algorithms, networks, operating systems, etc. for clearing interviews at big tech companies, Developmental knowledge to be work-ready in the industry and soft skills to get students within the community ready on all fronts for a career in tech.
  • Building an environment for students to actively hone their developmental skills in real time via the open-source development of Dijstra. Students will be able to get real-time work experience by collaborating on the development of Dijkstra. This would include skills in full-stack development, micro-services development, cloud services, etc. All of which will be made available for students to access and work on. In simple terms, Dijkstra aims to be a one-stop solution for any aspiring CS student to become work-ready

We're currently looking for passionate students and Open-Source Developers for the following:

  • Application Development (MERN stack)
  • Web Development (MERN stack)
  • Discord Moderators
  • UI/UX Designers
  • Content Writers
  • Educators

If you can help, please do reach out to us! :) Feel free to send a message through this form link.

 

Usage

Download the current demo release APK file here.

We're still working on CI/CD and App Store integration in the near future. Until then, please do bear with our App Store Deployments, sorry!

Check out our official documentation for more information about our recommended hosting stack & properly Updating Dijkstra, plus work with our API.

 

Development

Server - Node (Use Version: v18.14.2)

Enter Backend directory

cd backend

Begin by installing node dependencies.

npm i 

Start server

npm start

Other important tips to note:

API Creation:
----------------------------------------------------
Controller -> Contains req/res of API
Routers -> Contains route for API (in case of CreatePost, gets variable from controllers/post)
Models -> Conatains DB Schema for API calls
App.js -> Uses API call via app.use() function call (line 10, app.js)

Check out our official documentation for more information about our recommended hosting stack & properly Updating Dijkstra, plus work with our API.

Admin Dashboard

Enter Admin directory

cd admin

Begin by installing node dependencies.

npm i 

Start developmental server

npm start

You should see this in your terminal on successful deployment

Compiled successfully!

You can now view admin in the browser.

  http://localhost:3000

Note that the development build is not optimized.  
To create a production build, use npm run build.   

webpack compiled successfully

React Native App

Enter Application Directory

cd blogApp

Download Dependencies

npm i

Make sure you have an Emulator installed. If not, you can refer to this article for Android, and this article for IOS. Once that's done. Check to see if Emulator is installed in VS Code via

ctrl + alt + e

Select Option View Emulators and then select any installed emulator. Once booted, enter the following in the terminal:

expo start

On entering the metro bundler;

› Press a │ open Android
› Press i │ open IOS
› Press w │ open web

› Press r │ reload app
› Press m │ toggle menu

› Press ? │ show all commands

 

TaskList (Things to do)

There's a LOT to be done. Feel free to pick up a task from this TaskList, or try tackling an issue or two from the issues section. Also, feel free to suggest any fixes, features and suggestions. Your ideas shape Dijkstra, and it's potential to impact thousands of students around the world!

Administration

  • Company Landing Page
    • Coming Soon Page - It's live!
    • Final Landing Page
  • Documentation
    • GitBook Docs
  • Outreach
    • LinkedIn Page (Organization)
    • Posters + Marketing (Organization)
    • Discord Server (Organization)

v2.0.0

  • Open Source Kickstart
    • Make flyers for OS contribution
    • Try getting traffic up and running (GDSC, IEEE, VIT) for both use + OS support
  • App
    • - Splash Screen Loader (Wait for Home page to render completely)
    • - Splash Screen Loader (Wait for Home page to render completely)
    • - Make Markup Area Larger
    • - Fix Search - Backend functionality
    • - Fix links access from App
    • - Loader for Fetching more posts (Home)
    • - Fix Status Bar
    • - Info Card (+Link to portfolio as well as Feedback form)
    • - Redesign main home and search → Set theme and Color + Bottom Navigator Color
    • - Blog Post Design + Colour Handling (how to deal with color depending on Thumbnail Color)
    • - Fix Search (change for each letter)
    • - Fix Markup Handling
    • - Authentication token (bearer token, or if possible, research basic auth and add to routes)
  • Admin
    • - Make BOT to auto build out a blog post
    • - Splash Screen Loader
    • - Add Account Name + Icon for Admin
    • - Account Handling (Password Protection for ADMIN)
    • - Handle duplicate image upload for cloud

v3.0.0 (Tenative)

  • Trash → Place schema to handle Trash
  • Tags Menu (Like Home, but with bubbles for different tags + Search via tags) + Groups Home Screen additions
  • Notification for new featured post
  • Discussion Room (discuss anything related to placements) - Common Questions, topics, further opportunities, Video references, Useful Links
  • User Login + Auth for App accounts
  • Comments → Disqus
  • Share Post as Web Page Snippet - add mailing list as well ig?
  • Certification Bot + Role handlers (To track progress of individual members + AI generated Letters of Recommendation

 

Dijkstra's Gameplan

Dijkstra-Architecture

It's still a work in progress, but please feel free to suggest changes, via GitHub issues.

 

Current Progress

admin-panel1

Dijkstra Admin Panel - Home Page

image

Dijkstra Admin Panel - Create Post

Splash Screen Home About Us

Splash Screen, Home Screen, About Us Screen

 

Community

You can better engage with Dijkstra's community via the following avenues:

 

Acknowledgements

Shoutouts to all these people and companies that make Dijkstra possible:

  • MLSA - For providing Credits for Dijkstra's Transition to Azure.
  • Full Stack Niraj - Youtube Channel for support on building this application.
  • Canva - For Design needs
  • Hotspot Ai - Splash Screens

 

Copyright & license

Copyright (c) 2023 JRS Studios - Released under the MIT license. Dijkstra and the Dijkstra Logo are trademarks of JRS Studios Ltd.

About

Currently in development, looking for students and passionate Open-Source Contributors interested in gaining real world experience, whilst simultaneously preparing for Data Structure and Algorithm based Interviews at Major Tech Companies.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published