Code Monkey home page Code Monkey logo

virtual-tech-school's Introduction

Virtual Tech School

Virtual Tech School is a community aiming to help everyone get started, learn and grow together in our fast paced industry. By everyone, we mean EVERYONE!

This is a repository for our community's website. Following are the steps for running it locally in your system -

1. Creating a Virtual Environment

After cloning the repository, navigate into the repository through command line terminal / command prompt and create a virtual environment with the following command -

python -m venv venv

We have used Python3.11.x for this application. You can check the version of python in your system by running -

python --version

Note - Python 3 might be accessible in some devices with python3 command, therefore your command to create the virtual environment becomes - python3 -m venv venv

Note - Sometimes, you may get an error while trying to create a virtual environment, returning a non-zero exit status 1. In that case, checkout the solution here. After this, the above command should run as intended.

2. Sourcing the Virtual Environment

Once the virtual environment is created, source it with -

source venv/bin/activate

Note - The above command will work in Linux and MacOS, but for windows, try the below command -

venv\Scripts\activate.bat

3. Sourcing Environment Variables

For MacOS/Linux - Create a file called dev.env and add the following inside that file -

export FLASK_DEBUG=true
export SERVICE_URL=http://localhost:5000

export CHANNEL_ID={YouTube Channel ID}
export YT_API_KEY={Your Google API Key}
export YOUTUBE_LINK={YouTube Channel Link}

export DISCORD_SERVER_ID={Discord Server ID}
export DISCORD_LINK={Discord Server's Invite Link}

export TWITTER_TOKEN={Your Twitter Bearer Token}
export TWT_USERNAME={Twitter Handle Username}
export TWITTER_LINK={Twitter Profile Link}

export HASHNODE_PROFILE={Hashnode Profile Page}
export HASHNODE_LINK={Hashnode Blog Link}

Source the above file with - source dev.env

Note - If you do not wish to generate the API Keys and Tokens, edit the app/views/views.py and replace get_*_stat() function with hardcoded numbers.

For Windows - Create a file called dev.bat and add the same contents as above in the file. Source it with - dev.bat

4. Installing Libraries and Dependencies

For installing dependencies and libraries, run -

pip install -r requirements.txt

5. Starting the server

To start the server, run -

python manage.py run

The website should now be hosted on http://localhost:5000. Feel free to contribute in our website, or let us know if you have any improvements in mind on our discord server.

Connect with our mentor

Join Virtual Tech School

virtual-tech-school's People

Contributors

apoorv-on-git avatar venkatabhaskarr avatar

Stargazers

Khushal Arora avatar Shubh Sharma avatar Constant Learner avatar Ahor Isaac avatar Nitish Malang avatar Coderr_R1ck avatar Abhishek Chaurasia avatar Prasurjya Pran Borah avatar Peeyush Guleria avatar Aditya Tripathi avatar Aadarsh Thakur avatar Jerson Fenadict Andro  avatar Ravindra Pandey avatar Yash Raj avatar Prakhar 🔱 Man of Creativity avatar Hamees Sayed avatar

virtual-tech-school's Issues

Creating Relevant Issues

We get some good insights from - https://pagespeed.web.dev/ - about our website's performance. It recommends us a lot of things we can do to improve the performance and overall speed of our website. Corresponding issues can be created and taken up based on that.

The Content overflows outside the container.

Found some styling issues on https://virtualtechschool.org/bootcamp in desktop view

  • The content inside the containers(<div>) on https://virtualtechschool.org/bootcamp overflows due to the larger lager font size of the heading.
  • And the text inside the container is also aligned to center which not looks impressive.

my suggestions

  • Is to reduce the font size of headings used inside the container from 3rem to 2.2 or 2rem .
  • Give some padding from top. (padding-top: .8rem;)
  • And make the paragraphs text align left.

Before

Screenshot (476)

After

Screenshot (475)

Direct links to socials instead of retrieving them as environment variables

In home page, join us today section when we are clicking the join buttons of the socials its redirecting to a not found url because we are retrieving the links from environment variables.

So instead of retrieving them from environment variables can't we add direct links?

Screenshot 2022-12-24 at 3 20 14 PM

Here link of YouTube channel was added directly instead of retrieving from environment variable as in the case of Discord link.

Serving images in next-gen formats

As our application is not performing well in image rendering as suggested by page speed insights, to improve the performance of the application the images should be served in next-gen formats.

So converting all the images in assets folder (.png and .svg ) to webP format would resolve the problem.

The footer looks misleading

Screenshot_2023-02-17-18-03-48-263_com.android.chrome.jpg

The "Projects Mentorship Web Development" section look like links, instead of the actual purpose of describing VTS.

Should be made small or made into links in my opinion.

Fetching community numbers from the API

Our home page takes a few seconds to render, technically because we are using APIs and web scraping to fetch 4 numbers -

  1. YouTube subscriber count
  2. Twitter follower count
  3. Discord member count
  4. Hashnode follower count

We fetch these values when the page is getting loaded from the views. Instead, we could bring them from the APIs (api.py) and update the numbers by making a get request to the API we create to improve the speed of the page.

Development Phase 2

This issue is to document a few things I'm planning to develop our community website further. Here are a few things I have in mind -

~ Introducing login/signup and profiles.
~ Maintaining student progress.
~ Building a Content Management System for our content and resources.
~ Introducing a hybrid database model - SQL for user profiles & data, NoSQL for CMS.
~ Introducing Docker for easier project setup.

If you guys have any more ideas, feel free to leave comments. :)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.