├── .dockerignore
├── .eslintrc.js
├── .github
├── ISSUE_TEMPLATE
│ ├── bug_report.yml
│ ├── config.yml
│ ├── doc_report.yml
│ ├── feature_request.yml
│ └── other.yml
├── labeler.yaml
├── pull_request_template.md
└── workflows
│ ├── codeql.yml
│ ├── greetings.yaml
│ ├── labeler.yaml
│ ├── node.js.yml
│ ├── pages-deploy.yaml
│ └── stale.yml
├── .gitignore
├── .husky
├── post-merge
└── pre-commit
├── .prettierignore
├── .prettierrc.js
├── .vscode
├── extensions.json
└── settings.json
├── CNAME
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── Dockerfile
├── LICENSE
├── README.md
├── SkewdImage
└── wemakedevs.drawio.png
├── craco.config.js
├── jsconfig.json
├── kubernetes
├── deploy.yml
└── svc.yml
├── package-lock.json
├── package.json
├── public
├── 404.html
├── CNAME
├── assets
│ ├── images
│ │ ├── OpenSource
│ │ │ └── collab.svg
│ │ ├── educationalpage
│ │ │ ├── adithiya.jpg
│ │ │ ├── ashish.jpg
│ │ │ ├── jeevan.jpg
│ │ │ ├── prakhar.jpg
│ │ │ ├── shlok.jpg
│ │ │ └── yatish.jpg
│ │ ├── hackathonpage
│ │ │ ├── prathamesh.jpg
│ │ │ ├── rakesh.jpg
│ │ │ ├── samyak.jpg
│ │ │ ├── shruti.jpg
│ │ │ └── syed.jpg
│ │ ├── meetup
│ │ │ ├── 1.jpeg
│ │ │ ├── 2.jpeg
│ │ │ ├── 3.jpeg
│ │ │ ├── 4.jpeg
│ │ │ ├── 5.jpeg
│ │ │ ├── 6.jpeg
│ │ │ ├── 7.jpeg
│ │ │ ├── 8.jpeg
│ │ │ ├── 9.jpeg
│ │ │ ├── delhi-aug-2022
│ │ │ │ └── Poster.jpg
│ │ │ └── delhi-may-2023
│ │ │ │ ├── Poster.jpg
│ │ │ │ ├── hero.png
│ │ │ │ └── sponsors
│ │ │ │ ├── armo.svg
│ │ │ │ ├── avesha.svg
│ │ │ │ ├── boot.png
│ │ │ │ ├── civo.png
│ │ │ │ ├── cncf.jpeg
│ │ │ │ ├── devs.png
│ │ │ │ ├── devtron.png
│ │ │ │ ├── dungeon.jpeg
│ │ │ │ ├── fluxninja.png
│ │ │ │ ├── hashnode.png
│ │ │ │ ├── kubesimplify.svg
│ │ │ │ ├── metabob.png
│ │ │ │ ├── nashik.png
│ │ │ │ ├── rawkode.svg
│ │ │ │ ├── shebuilds.png
│ │ │ │ └── virtual.svg
│ │ ├── scholarship
│ │ │ ├── Ashwin.jpg
│ │ │ ├── Diana.jpg
│ │ │ └── Tarun.jpg
│ │ └── super25
│ │ │ ├── benefits.svg
│ │ │ └── hero.svg
│ └── ourprojects
│ │ ├── roadmap.png
│ │ └── wmd.png
├── favicon.ico
└── index.html
├── src
├── App.jsx
├── Icons
│ └── core
│ │ ├── Logo.jsx
│ │ └── NewTab.jsx
├── assets
│ ├── courses
│ │ ├── devops.jpg
│ │ ├── dsa.jpg
│ │ ├── git-github.jpg
│ │ ├── opensource.avif
│ │ ├── opensource.jpeg
│ │ └── testimonials
│ │ │ ├── Manoj.jpg
│ │ │ ├── arsalan.jpg
│ │ │ ├── muhammad.jpg
│ │ │ └── sagar_rawat.jpg
│ ├── events
│ │ ├── educational.jpg
│ │ ├── hackathon.jpg
│ │ ├── hashnode.jpg
│ │ ├── meetup.jpeg
│ │ ├── past-event-1.jpeg
│ │ ├── past-event-2.jpeg
│ │ ├── past-event-3.jpeg
│ │ ├── past-event-4.jpeg
│ │ ├── past-event-5.jpeg
│ │ ├── past-event-6.jpeg
│ │ ├── past-event-7.jpeg
│ │ ├── past-event-8.jpeg
│ │ ├── roads.jpg
│ │ ├── scholarship.jpg
│ │ ├── super25.jpg
│ │ └── webinar.jpg
│ ├── hackathon
│ │ ├── napptive
│ │ │ ├── Banner.jpg
│ │ │ ├── Steve.jpeg
│ │ │ └── theme.png
│ │ └── syncloop
│ │ │ ├── 1st.png
│ │ │ ├── 2nd.png
│ │ │ ├── 3rd.png
│ │ │ ├── Banner.png
│ │ │ ├── judge.jpg
│ │ │ ├── judge1.jpg
│ │ │ └── theme.png
│ ├── hashnode
│ │ ├── 3.png
│ │ ├── Grand-Prize.png
│ │ ├── Hashnode.webp
│ │ ├── Special-Prize.png
│ │ ├── Special-Track.png
│ │ ├── Track-1.png
│ │ ├── Track-2.png
│ │ ├── Track-3.png
│ │ └── Track-4.png
│ ├── home
│ │ ├── aboutus.png
│ │ ├── company
│ │ │ ├── adobe.svg
│ │ │ ├── amazon.svg
│ │ │ ├── blackrock.svg
│ │ │ ├── cisco.svg
│ │ │ ├── clicklabs.svg
│ │ │ ├── google.svg
│ │ │ ├── microsoft.svg
│ │ │ ├── razorpay.svg
│ │ │ ├── samsung.svg
│ │ │ ├── towerResearch.svg
│ │ │ └── virtusa.svg
│ │ ├── courses.png
│ │ ├── events.png
│ │ ├── latestevents.png
│ │ ├── mentorship.png
│ │ ├── newblogimage.jpg
│ │ └── testimonials
│ │ │ ├── anurag.jpg
│ │ │ ├── ekjottest2.jpg
│ │ │ ├── prasanna.jpg
│ │ │ ├── rahultest1.jpg
│ │ │ ├── sajjantest3.jpg
│ │ │ └── sivanithin.jpg
│ ├── images
│ │ ├── new-tab.png
│ │ └── team
│ │ │ ├── aayush.webp
│ │ │ ├── adarsh.webp
│ │ │ ├── bhavya.webp
│ │ │ ├── gauri.webp
│ │ │ ├── index.js
│ │ │ └── kunal.webp
│ ├── partner
│ │ ├── bootdotdev.jpg
│ │ ├── finout.jpg
│ │ ├── komodor.jpg
│ │ ├── kubesphere.jpg
│ │ ├── stream.jpg
│ │ ├── teleport.png
│ │ └── wilco.jpg
│ └── webinars
│ │ ├── DatabaseGuardrails.png
│ │ ├── Deploy-With-Feature-Flags.png
│ │ ├── Gopher.png
│ │ ├── ManageK8Applications.jpg
│ │ ├── Maximising-Developer-Productivity-AI-Era.png
│ │ ├── Observability-devops.jpg
│ │ ├── access-control.png
│ │ ├── autometrics.png
│ │ ├── bite-size-otterize.png
│ │ ├── chatops-for-k8s.png
│ │ ├── cloud-cost.png
│ │ ├── configuration-as-code.jpg
│ │ ├── ebf.jpg
│ │ ├── headless-browser.jpg
│ │ ├── hero.gif
│ │ ├── hero.png
│ │ ├── kafka
│ │ ├── poster.png
│ │ ├── speaker.jpeg
│ │ └── speaker1.jpg
│ │ ├── livecycle-docker-compose.png
│ │ ├── no-code.jpg
│ │ ├── pulumi-webinar.jpg
│ │ ├── simplify-deployments.png
│ │ ├── state-of-java.jpg
│ │ ├── surrealdb-webinar.png
│ │ └── zero-downtime.jpeg
├── components
│ ├── Accordion
│ │ ├── AccordionItem.jsx
│ │ └── index.jsx
│ ├── Button.jsx
│ ├── Cards
│ │ ├── AgendaCard.jsx
│ │ ├── CounterCard.jsx
│ │ ├── DetailCard.jsx
│ │ ├── MeetupCard.jsx
│ │ ├── SpeakerCard.jsx
│ │ ├── SponserCard.jsx
│ │ ├── StatCard.jsx
│ │ ├── TeamMemberCard.jsx
│ │ ├── TestimonialCard.jsx
│ │ ├── TimeLineCard.jsx
│ │ ├── TrackCard.jsx
│ │ └── WebinarCard.jsx
│ ├── Listitem.jsx
│ ├── PageComp
│ │ ├── CoursesPage
│ │ │ ├── About.jsx
│ │ │ ├── Courses.jsx
│ │ │ ├── Hero.jsx
│ │ │ └── index.js
│ │ ├── EducationalEventsPage
│ │ │ ├── Hero.jsx
│ │ │ ├── OngoingEvents.jsx
│ │ │ ├── PastEvents.jsx
│ │ │ ├── Testimonial.jsx
│ │ │ └── index.js
│ │ ├── EventsPage
│ │ │ ├── About.jsx
│ │ │ ├── EventCategories.jsx
│ │ │ ├── Hero.jsx
│ │ │ ├── OngoingEvents.jsx
│ │ │ ├── PastEvents.jsx
│ │ │ ├── Stats.jsx
│ │ │ └── index.js
│ │ ├── HackathonsPage
│ │ │ ├── About.jsx
│ │ │ ├── Hero.jsx
│ │ │ ├── OngoingEvents.jsx
│ │ │ ├── PastEvents.jsx
│ │ │ ├── Stats.jsx
│ │ │ ├── Testimonials.jsx
│ │ │ └── index.js
│ │ ├── HashnodePage
│ │ │ ├── About.jsx
│ │ │ ├── Announcement
│ │ │ │ ├── index.jsx
│ │ │ │ └── index.module.css
│ │ │ ├── GrandPrize.jsx
│ │ │ ├── Hero.jsx
│ │ │ ├── HowTakePart.jsx
│ │ │ ├── Tracks.jsx
│ │ │ └── index.js
│ │ ├── HomePage
│ │ │ ├── About.jsx
│ │ │ ├── Content.jsx
│ │ │ ├── Courses.jsx
│ │ │ ├── Events.jsx
│ │ │ ├── Hero.jsx
│ │ │ ├── Mentorship.jsx
│ │ │ ├── Stats.jsx
│ │ │ ├── Team.jsx
│ │ │ ├── Testimonials.jsx
│ │ │ ├── Work.jsx
│ │ │ └── index.js
│ │ ├── IndividualWebinar
│ │ │ ├── About.jsx
│ │ │ ├── Register.jsx
│ │ │ ├── Speakers.jsx
│ │ │ └── index.js
│ │ ├── OpenSourcePage
│ │ │ ├── About.jsx
│ │ │ ├── Header.jsx
│ │ │ └── OurProjects.jsx
│ │ ├── ScholarshipsPage
│ │ │ ├── Hero.jsx
│ │ │ ├── OngoingEvents.jsx
│ │ │ ├── PastEvents.jsx
│ │ │ ├── Testimonials.jsx
│ │ │ └── index.js
│ │ ├── SingleCoursePage
│ │ │ ├── About.jsx
│ │ │ ├── Syllabus.jsx
│ │ │ └── index.js
│ │ └── WebinarPage
│ │ │ ├── Hero.jsx
│ │ │ ├── Past.jsx
│ │ │ ├── Upcoming.jsx
│ │ │ └── index.js
│ ├── ScrollToTop.jsx
│ ├── TweetCarousael
│ │ └── index.jsx
│ ├── layout
│ │ ├── Backdrop.jsx
│ │ ├── Banner.jsx
│ │ ├── ColumnSection.jsx
│ │ ├── Faq.jsx
│ │ ├── Footer.jsx
│ │ ├── Footer
│ │ │ └── index.module.css
│ │ ├── JoinUs
│ │ │ ├── NewsLetter.jsx
│ │ │ ├── index.jsx
│ │ │ └── index.module.css
│ │ ├── Loader.jsx
│ │ ├── Navbar
│ │ │ ├── index.jsx
│ │ │ └── index.module.css
│ │ ├── Partner
│ │ │ ├── PartnerTestimonials.jsx
│ │ │ ├── index.jsx
│ │ │ └── index.module.css
│ │ ├── Testimonials.jsx
│ │ └── index.jsx
│ └── links
│ │ ├── ArrowLink.jsx
│ │ ├── ButtonLink.jsx
│ │ ├── HeaderLink.jsx
│ │ ├── UnstyledLink.jsx
│ │ └── index.js
├── content
│ ├── Educational
│ │ └── Testimonials.js
│ ├── Hackathons
│ │ ├── ParticularHackathonPageContent.js
│ │ ├── Testimonial.js
│ │ ├── index.js
│ │ ├── napptive.js
│ │ └── syncloop.js
│ ├── Meetup
│ │ ├── ParticularMeetupPageContent.js
│ │ ├── delhi-may-2023.js
│ │ └── index.js
│ ├── Scholarship
│ │ └── testimonial.js
│ ├── Webinars
│ │ ├── AutometricsWebinar.js
│ │ ├── BPFWebinar.js
│ │ ├── BiteSizeOtterize.js
│ │ ├── ChatOpsWebinar.js
│ │ ├── ConfigurationAsCode.js
│ │ ├── CostOptimizationWebinar.js
│ │ ├── DatabaseGuardrails.js
│ │ ├── DeployWithFeatureFlags.js
│ │ ├── DevProductivityAIEra.js
│ │ ├── GopherWebinar.js
│ │ ├── HeadlessBrowser.js
│ │ ├── IndividualWebinarPageContent.js
│ │ ├── KafkaWebinar.js
│ │ ├── LivecycleWebinar.js
│ │ ├── ManageK8Applications.js
│ │ ├── NoCodeApproachWebianr.js
│ │ ├── ObservabilityDevOps.js
│ │ ├── PulumiWebinar.js
│ │ ├── SimplifiedDeployment.js
│ │ ├── StateOfJava.js
│ │ ├── SurrealDBWebinar.js
│ │ ├── ZeroDowntimeKubeslice.js
│ │ └── index.content.js
│ ├── coc.js
│ ├── courses
│ │ ├── CoursesPageContent.js
│ │ ├── devops.js
│ │ ├── dsa.js
│ │ ├── gitGithub.js
│ │ ├── index.js
│ │ └── opensource.js
│ ├── opensource
│ │ └── index.js
│ └── prizetweetid.js
├── index.js
├── lib
│ └── utils.js
├── pages
│ ├── CocPage.jsx
│ ├── CoursesPage.jsx
│ ├── EducationalEventsPage.jsx
│ ├── ErrorPage.jsx
│ ├── EventsPage.jsx
│ ├── HackathonPage.jsx
│ ├── Hashnode.jsx
│ ├── HomePage.jsx
│ ├── IndividualWebinar.jsx
│ ├── MeetupPage.jsx
│ ├── OpenSourceCoursePage.jsx
│ ├── OpenSourcePage.jsx
│ ├── ParticularMeetupPage.jsx
│ ├── PerticularhackathonPage.jsx
│ ├── ScholarshipsPage.jsx
│ ├── SingleCoursePage.jsx
│ ├── WebinarPage.jsx
│ └── content.js
└── styles
│ └── tailwind.css
└── tailwind.config.js
/.dockerignore:
--------------------------------------------------------------------------------
1 | .git
2 | .github
3 | .gitignore
4 | *.md
5 | LICENSE
6 | .husky
7 | CNAME
8 | node_modules
9 | build
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/bug_report.yml:
--------------------------------------------------------------------------------
1 | name: Bug report
2 | description: Create a report to help us improve
3 | title: '[bug]'
4 | labels: ['bug']
5 | body:
6 | - type: textarea
7 | attributes:
8 | label: Describe the bug
9 | description: A clear and concise description of what the bug is
10 | validations:
11 | required: false
12 | - type: textarea
13 | attributes:
14 | label: To Reproduce
15 | description: |
16 | Steps to reproduce the behavior.
17 | 1. Go to '...'
18 | 2. Click on '...'
19 | 3. Scroll down to '...'
20 | 4. See error
21 | validations:
22 | required: false
23 | - type: textarea
24 | attributes:
25 | label: Expected Behavior
26 | description: A clear and concise description of what you expected to happen.
27 | validations:
28 | required: false
29 | - type: textarea
30 | attributes:
31 | label: Screenshot/ Video
32 | description: If applicable, add screenshots to help explain your problem.
33 | validations:
34 | required: false
35 | - type: textarea
36 | attributes:
37 | label: Additional context
38 | description: Add any other context about the problem here.
39 | validations:
40 | required: false
41 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/config.yml:
--------------------------------------------------------------------------------
1 | blank_issues_enabled: false
2 | contact_links:
3 | - name: Discord community support
4 | url: https://discord.io/commclassroom
5 | about: Need any help? Found any bug? Please chat with us via Discord.
6 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/doc_report.yml:
--------------------------------------------------------------------------------
1 | name: Documentation request
2 | description: Change regarding improving the docs to be more accessible
3 | title: '[docs]'
4 | labels: ['documentation']
5 | body:
6 | - type: textarea
7 | attributes:
8 | label: Category of documentation update
9 | description: |
10 | What category does this change fall under.For example Typo error, New category addition, Rephrasing the sentences, fixing broken links etc
11 | validations:
12 | required: true
13 | - type: textarea
14 | attributes:
15 | label: Describe the change you think might work
16 | description: Please describe the change & need of change in atmost detail possible.
17 | validations:
18 | required: false
19 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/feature_request.yml:
--------------------------------------------------------------------------------
1 | name: Feature request
2 | description: Suggest an idea for this project
3 | title: '[feat]'
4 | labels: ['enhancement']
5 | body:
6 | - type: textarea
7 | attributes:
8 | label: Would you like to have a new feature? Please describe.
9 | description: A clear and concise description of what the feature is
10 | placeholder: Ex. Whenever I try to do (xyz) then [...]
11 | validations:
12 | required: false
13 | - type: textarea
14 | attributes:
15 | label: How would this feature be beneficial for the project
16 | description: A clear and concise description about the importance of the feature
17 | validations:
18 | required: false
19 | - type: textarea
20 | attributes:
21 | label: Additional context
22 | description: Add any other context or screenshots about the feature request here.
23 | validations:
24 | required: false
25 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/other.yml:
--------------------------------------------------------------------------------
1 | name: Other
2 | description: Use this for any other issues. PLEASE do not create blank issues
3 | title: '[other]'
4 | labels: ['awaiting triage']
5 | body:
6 | - type: markdown
7 | attributes:
8 | value: '# Other issue'
9 | - type: textarea
10 | id: issuedescription
11 | attributes:
12 | label: What would you like to share?
13 | description: Provide a clear and concise explanation of your issue.
14 | validations:
15 | required: true
16 | - type: textarea
17 | id: extrainfo
18 | attributes:
19 | label: Additional information
20 | description: Is there anything else we should know about this issue?
21 | validations:
22 | required: false
23 |
--------------------------------------------------------------------------------
/.github/labeler.yaml:
--------------------------------------------------------------------------------
1 | team:
2 | - "**/*"
--------------------------------------------------------------------------------
/.github/pull_request_template.md:
--------------------------------------------------------------------------------
1 |
2 |
3 | ## Fixes Issue
4 |
5 | This PR fixes the following issues:
6 |
7 | closes #issue-number
8 |
9 |
10 |
11 | ## Changes proposed
12 |
13 | Here comes all the changes proposed through this PR
14 |
15 |
16 |
20 |
21 | ## Check List (Check all the boxes which are applicable)
22 |
23 | - [ ] My code follows the code style of this project.
24 | - [ ] My change requires a change to the documentation.
25 | - [ ] I have updated the documentation accordingly.
26 | - [ ] All new and existing tests passed.
27 | - [ ] This PR does not contain plagiarized content.
28 | - [ ] The title of my pull request is a short description of the requested changes.
29 |
30 |
31 |
32 | ## Screenshots
33 |
34 | Add all the screenshots which support your changes
35 |
--------------------------------------------------------------------------------
/.github/workflows/greetings.yaml:
--------------------------------------------------------------------------------
1 | name: Greetings
2 |
3 | on:
4 | pull_request_target:
5 | types: [opened]
6 | issues:
7 | types: [opened]
8 |
9 | permissions:
10 | contents: read
11 | issues: write
12 | pull-requests: write
13 |
14 | jobs:
15 | greeting:
16 | runs-on: ubuntu-latest
17 | steps:
18 | - uses: actions/first-interaction@v1
19 | with:
20 | repo-token: ${{ secrets.GITHUB_TOKEN }}
21 | issue-message: Hey Hey! 👋🏻 Thank you so much for raising an issue. The maintainers will get back to you soon for discussion over the issue! In the meantime join our Discord server and checkout our YouTube channel.
22 | pr-message: Woah! This is your first Pull Request in our community, Congratulations 🎉 and thank you for your contribution! 🚀 The team will review it on availability 💫. In the meantime join our Discord server and checkout our YouTube channel.
23 |
--------------------------------------------------------------------------------
/.github/workflows/labeler.yaml:
--------------------------------------------------------------------------------
1 | name: "Pull Request Labeler"
2 | on:
3 | pull_request_target:
4 | types:
5 | - opened
6 |
7 | jobs:
8 | label:
9 | permissions:
10 | contents: read
11 | pull-requests: write
12 | runs-on: ubuntu-latest
13 | steps:
14 | - uses: WeMakeDevs/labeler-action@v2.0.0
15 | with:
16 | repo-token: "${{ secrets.GITHUB_TOKEN }}"
17 | configuration-path: .github/labeler.yaml
18 | sync-labels: false
--------------------------------------------------------------------------------
/.github/workflows/node.js.yml:
--------------------------------------------------------------------------------
1 | # This workflow will do a clean installation of node dependencies, cache/restore them, build the source code and run tests across different versions of node
2 | # For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-nodejs
3 |
4 | name: Node.js CI
5 |
6 | on:
7 | push:
8 | branches: [ "main" ]
9 | pull_request:
10 | branches: [ "main" ]
11 |
12 | jobs:
13 | build:
14 |
15 | runs-on: ubuntu-latest
16 |
17 | strategy:
18 | matrix:
19 | node-version: [16.x, 18.x]
20 | # See supported Node.js release schedule at https://nodejs.org/en/about/releases/
21 |
22 | steps:
23 | - uses: actions/checkout@v3
24 | - name: Use Node.js ${{ matrix.node-version }}
25 | uses: actions/setup-node@v3
26 | with:
27 | node-version: ${{ matrix.node-version }}
28 | cache: 'npm'
29 | - run: npm ci
30 | - run: npm run build --if-present
31 | # - run: npm test
32 |
--------------------------------------------------------------------------------
/.github/workflows/pages-deploy.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | name: GitHub Pages Deploy
3 | on:
4 | push:
5 | branches: [main]
6 | jobs:
7 | build-and-deploy:
8 | name: Build and Deploy
9 | runs-on: ubuntu-latest
10 |
11 | steps:
12 | - name: Checkout
13 | uses: actions/checkout@v2
14 |
15 | - name: Build
16 | run: npm install
17 |
18 | - name: Deploy
19 | run: |
20 | git config --global user.name 'wemakedevs'
21 | git config --global user.email 'kunal@wemakedevs.org'
22 | git remote set-url origin https://x-access-token:${{ secrets.GITHUB_TOKEN }}@github.com/${{ github.repository }}
23 | CI=false npm run deploy
24 |
--------------------------------------------------------------------------------
/.github/workflows/stale.yml:
--------------------------------------------------------------------------------
1 | # This workflow warns and then closes issues and PRs that have had no activity for a specified amount of time.
2 | #
3 | # You can adjust the behavior by modifying this file.
4 | # For more information, see:
5 | # https://github.com/actions/stale
6 | name: Mark stale issues and pull requests
7 |
8 | on:
9 | schedule:
10 | - cron: '44 9 * * *'
11 |
12 | jobs:
13 | stale:
14 | runs-on: ubuntu-latest
15 | permissions:
16 | issues: write
17 | pull-requests: write
18 |
19 | steps:
20 | - uses: actions/stale@v5
21 | with:
22 | repo-token: ${{ secrets.GITHUB_TOKEN }}
23 | stale-issue-message: 'Stale issue message'
24 | stale-pr-message: 'Stale pull request message'
25 | stale-issue-label: 'no-issue-activity'
26 | stale-pr-label: 'no-pr-activity'
27 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 | /.pnp
6 | .pnp.js
7 |
8 | # testing
9 | /coverage
10 |
11 | # production
12 | /build
13 |
14 | # misc
15 | .DS_Store
16 | .env.local
17 | .env.development.local
18 | .env.test.local
19 | .env.production.local
20 |
21 | npm-debug.log*
22 | yarn-debug.log*
23 | yarn-error.log*
24 |
--------------------------------------------------------------------------------
/.husky/post-merge:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | . "$(dirname "$0")/_/husky.sh"
3 |
4 | npm i
5 |
--------------------------------------------------------------------------------
/.husky/pre-commit:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | . "$(dirname "$0")/_/husky.sh"
3 |
4 | npx lint-staged
--------------------------------------------------------------------------------
/.prettierignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 | /.pnp
6 | .pnp.js
7 |
8 | # testing
9 | /coverage
10 |
11 | # next.js
12 | .next
13 | /.next/
14 | /out/
15 |
16 | # production
17 | /build
18 |
19 | # misc
20 | .DS_Store
21 | *.pem
22 |
23 | # debug
24 | npm-debug.log*
25 | yarn-debug.log*
26 | yarn-error.log*
27 |
28 | # local env files
29 | .env.local
30 | .env.development.local
31 | .env.test.local
32 | .env.production.local
33 |
34 | # vercel
35 | .vercel
36 |
37 | # changelog
38 | CHANGELOG.md
39 |
40 | # git
41 | .git
42 | .github
43 |
44 | # Deploy
45 | kubernetes
--------------------------------------------------------------------------------
/.prettierrc.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | arrowParens: 'always',
3 | singleQuote: true,
4 | jsxSingleQuote: true,
5 | tabWidth: 2,
6 | semi: true,
7 | endOfLine: 'auto',
8 | };
9 |
--------------------------------------------------------------------------------
/.vscode/extensions.json:
--------------------------------------------------------------------------------
1 | {
2 | "recommendations": [
3 | // Tailwind CSS Intellisense
4 | "bradlc.vscode-tailwindcss",
5 | "esbenp.prettier-vscode",
6 | "dbaeumer.vscode-eslint",
7 | "aaron-bond.better-comments"
8 | ]
9 | }
10 |
--------------------------------------------------------------------------------
/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "css.validate": false,
3 | "editor.formatOnSave": true,
4 | "editor.tabSize": 2,
5 | "editor.codeActionsOnSave": {
6 | "source.fixAll": true
7 | },
8 | "headwind.runOnSave": false,
9 | "typescript.preferences.importModuleSpecifier": "non-relative",
10 | "javascript.preferences.importModuleSpecifier": "non-relative",
11 | "typescript.validate.enable": false,
12 | "javascript.validate.enable": false
13 | }
14 | {
15 | "editor.defaultFormatter": "rvest.vs-code-prettier-eslint",
16 | "editor.formatOnPaste": false, // required
17 | "editor.formatOnType": false, // required
18 | "editor.formatOnSave": true, // optional
19 | "editor.formatOnSaveMode": "file", // required to format on save
20 | "files.autoSave": "onFocusChange", // optional but recommended
21 | "vs-code-prettier-eslint.prettierLast": "false" // set as "true" to run 'prettier' last not first
22 | }
23 |
--------------------------------------------------------------------------------
/CNAME:
--------------------------------------------------------------------------------
1 | www.wemakedevs.org
2 |
--------------------------------------------------------------------------------
/CONTRIBUTING.md:
--------------------------------------------------------------------------------
1 | # Contributing
2 |
3 | Thank you for considering and taking the time to contribute! Product focuses on 100% quality education free for all.
4 |
5 | The following are guidelines for contributing to this project.
6 |
7 | ## How to Report Bugs
8 |
9 | Please open [a new issue in the appropriate GitHub repository][new-issue] with steps to reproduce the problem you're experiencing.
10 |
11 | Be sure to include as much information including screenshots, text output, and both your expected and actual results.
12 |
13 | ## How to Request Enhancements
14 |
15 | First, please refer to the applicable [GitHub repository][github-repo] and search [the repository's GitHub issues][issues-list] to make sure your idea has not been (or is not still) considered.
16 |
17 | Then, please [create a new issue in the GitHub repository][new-issue] describing your enhancement.
18 |
19 | Be sure to include as much detail as possible including step-by-step descriptions, specific examples, screenshots or mockups, and reasoning for why the enhancement might be worthwhile.
20 |
21 | [new-issue]: https://github.com/commclassroom/commclassroom/issues/new/choose
22 | [github-repo]: https://github.com/commclassroom/commclassroom/
23 | [issues-list]: https://github.com/commclassroom/commclassroom/issues
24 |
--------------------------------------------------------------------------------
/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM node:16-alpine AS deps
2 | COPY package.json ./
3 | RUN npm install
4 |
5 | FROM deps AS builder
6 | COPY . .
7 | RUN npm run build
8 |
9 | FROM node:16-alpine AS runner
10 | COPY --from=builder build ./build
11 | RUN npm install -g serve
12 | EXPOSE 3000
13 | CMD ["serve", "-s", "build"]
14 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2023 WeMakeDevs
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/SkewdImage/wemakedevs.drawio.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/SkewdImage/wemakedevs.drawio.png
--------------------------------------------------------------------------------
/craco.config.js:
--------------------------------------------------------------------------------
1 | const path = require('path');
2 |
3 | module.exports = {
4 | webpack: {
5 | eslint: {
6 | enable: false,
7 | },
8 | alias: {
9 | '@': path.resolve(__dirname, 'src'),
10 | },
11 | },
12 | };
13 |
--------------------------------------------------------------------------------
/jsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "module": "commonjs",
4 | "target": "es2016",
5 | "jsx": "preserve",
6 | "checkJs": true,
7 | "baseUrl": "./src/",
8 | "paths": {
9 | "@/*": ["./*"]
10 | }
11 | },
12 | "exclude": ["node_modules", "**/node_modules/*"]
13 | }
14 |
--------------------------------------------------------------------------------
/kubernetes/deploy.yml:
--------------------------------------------------------------------------------
1 | apiVersion: apps/v1
2 | kind: Deployment
3 | metadata:
4 | name: wmd-deployment
5 | labels:
6 | app: wmd
7 | spec:
8 | replicas: 1
9 | selector:
10 | matchLabels:
11 | app: wmd
12 | template:
13 | metadata:
14 | labels:
15 | app: wmd
16 | spec:
17 | containers:
18 | - name: wmd-ctr
19 | image: kaiwalyakoparkar/wemakedevs:1.0
20 | ports:
21 | - containerPort: 3000
22 | ---
23 | # Commenting stuff because I have added loadbalancer service
24 | apiVersion: v1
25 | kind: Service
26 | metadata:
27 | name: wmd-service
28 | spec:
29 | selector:
30 | app: wmd
31 | ports:
32 | - protocol: TCP
33 | port: 3000
34 | targetPort: 3000
--------------------------------------------------------------------------------
/kubernetes/svc.yml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: Service
3 | metadata:
4 | name: wmd-loadbalancer
5 | spec:
6 | type: LoadBalancer
7 | ports:
8 | - port: 9000
9 | targetPort: 3000
10 | selector:
11 | app: wmd
12 |
--------------------------------------------------------------------------------
/public/404.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Single Page Apps for GitHub Pages
6 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/public/CNAME:
--------------------------------------------------------------------------------
1 | wemakedevs.org
2 |
--------------------------------------------------------------------------------
/public/assets/images/educationalpage/adithiya.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/educationalpage/adithiya.jpg
--------------------------------------------------------------------------------
/public/assets/images/educationalpage/ashish.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/educationalpage/ashish.jpg
--------------------------------------------------------------------------------
/public/assets/images/educationalpage/jeevan.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/educationalpage/jeevan.jpg
--------------------------------------------------------------------------------
/public/assets/images/educationalpage/prakhar.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/educationalpage/prakhar.jpg
--------------------------------------------------------------------------------
/public/assets/images/educationalpage/shlok.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/educationalpage/shlok.jpg
--------------------------------------------------------------------------------
/public/assets/images/educationalpage/yatish.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/educationalpage/yatish.jpg
--------------------------------------------------------------------------------
/public/assets/images/hackathonpage/prathamesh.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/hackathonpage/prathamesh.jpg
--------------------------------------------------------------------------------
/public/assets/images/hackathonpage/rakesh.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/hackathonpage/rakesh.jpg
--------------------------------------------------------------------------------
/public/assets/images/hackathonpage/samyak.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/hackathonpage/samyak.jpg
--------------------------------------------------------------------------------
/public/assets/images/hackathonpage/shruti.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/hackathonpage/shruti.jpg
--------------------------------------------------------------------------------
/public/assets/images/hackathonpage/syed.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/hackathonpage/syed.jpg
--------------------------------------------------------------------------------
/public/assets/images/meetup/1.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/meetup/1.jpeg
--------------------------------------------------------------------------------
/public/assets/images/meetup/2.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/meetup/2.jpeg
--------------------------------------------------------------------------------
/public/assets/images/meetup/3.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/meetup/3.jpeg
--------------------------------------------------------------------------------
/public/assets/images/meetup/4.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/meetup/4.jpeg
--------------------------------------------------------------------------------
/public/assets/images/meetup/5.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/meetup/5.jpeg
--------------------------------------------------------------------------------
/public/assets/images/meetup/6.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/meetup/6.jpeg
--------------------------------------------------------------------------------
/public/assets/images/meetup/7.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/meetup/7.jpeg
--------------------------------------------------------------------------------
/public/assets/images/meetup/8.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/meetup/8.jpeg
--------------------------------------------------------------------------------
/public/assets/images/meetup/9.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/meetup/9.jpeg
--------------------------------------------------------------------------------
/public/assets/images/meetup/delhi-aug-2022/Poster.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/meetup/delhi-aug-2022/Poster.jpg
--------------------------------------------------------------------------------
/public/assets/images/meetup/delhi-may-2023/Poster.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/meetup/delhi-may-2023/Poster.jpg
--------------------------------------------------------------------------------
/public/assets/images/meetup/delhi-may-2023/hero.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/meetup/delhi-may-2023/hero.png
--------------------------------------------------------------------------------
/public/assets/images/meetup/delhi-may-2023/sponsors/boot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/meetup/delhi-may-2023/sponsors/boot.png
--------------------------------------------------------------------------------
/public/assets/images/meetup/delhi-may-2023/sponsors/civo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/meetup/delhi-may-2023/sponsors/civo.png
--------------------------------------------------------------------------------
/public/assets/images/meetup/delhi-may-2023/sponsors/cncf.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/meetup/delhi-may-2023/sponsors/cncf.jpeg
--------------------------------------------------------------------------------
/public/assets/images/meetup/delhi-may-2023/sponsors/devs.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/meetup/delhi-may-2023/sponsors/devs.png
--------------------------------------------------------------------------------
/public/assets/images/meetup/delhi-may-2023/sponsors/devtron.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/meetup/delhi-may-2023/sponsors/devtron.png
--------------------------------------------------------------------------------
/public/assets/images/meetup/delhi-may-2023/sponsors/dungeon.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/meetup/delhi-may-2023/sponsors/dungeon.jpeg
--------------------------------------------------------------------------------
/public/assets/images/meetup/delhi-may-2023/sponsors/fluxninja.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/meetup/delhi-may-2023/sponsors/fluxninja.png
--------------------------------------------------------------------------------
/public/assets/images/meetup/delhi-may-2023/sponsors/hashnode.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/meetup/delhi-may-2023/sponsors/hashnode.png
--------------------------------------------------------------------------------
/public/assets/images/meetup/delhi-may-2023/sponsors/metabob.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/meetup/delhi-may-2023/sponsors/metabob.png
--------------------------------------------------------------------------------
/public/assets/images/meetup/delhi-may-2023/sponsors/nashik.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/meetup/delhi-may-2023/sponsors/nashik.png
--------------------------------------------------------------------------------
/public/assets/images/meetup/delhi-may-2023/sponsors/shebuilds.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/meetup/delhi-may-2023/sponsors/shebuilds.png
--------------------------------------------------------------------------------
/public/assets/images/scholarship/Ashwin.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/scholarship/Ashwin.jpg
--------------------------------------------------------------------------------
/public/assets/images/scholarship/Diana.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/scholarship/Diana.jpg
--------------------------------------------------------------------------------
/public/assets/images/scholarship/Tarun.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/images/scholarship/Tarun.jpg
--------------------------------------------------------------------------------
/public/assets/ourprojects/roadmap.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/ourprojects/roadmap.png
--------------------------------------------------------------------------------
/public/assets/ourprojects/wmd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/assets/ourprojects/wmd.png
--------------------------------------------------------------------------------
/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/public/favicon.ico
--------------------------------------------------------------------------------
/src/Icons/core/NewTab.jsx:
--------------------------------------------------------------------------------
1 | const NewTab = () => {
2 | return (
3 |
8 |
17 |
21 |
22 | );
23 | };
24 |
25 | export default NewTab;
26 |
--------------------------------------------------------------------------------
/src/assets/courses/devops.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/courses/devops.jpg
--------------------------------------------------------------------------------
/src/assets/courses/dsa.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/courses/dsa.jpg
--------------------------------------------------------------------------------
/src/assets/courses/git-github.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/courses/git-github.jpg
--------------------------------------------------------------------------------
/src/assets/courses/opensource.avif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/courses/opensource.avif
--------------------------------------------------------------------------------
/src/assets/courses/opensource.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/courses/opensource.jpeg
--------------------------------------------------------------------------------
/src/assets/courses/testimonials/Manoj.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/courses/testimonials/Manoj.jpg
--------------------------------------------------------------------------------
/src/assets/courses/testimonials/arsalan.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/courses/testimonials/arsalan.jpg
--------------------------------------------------------------------------------
/src/assets/courses/testimonials/muhammad.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/courses/testimonials/muhammad.jpg
--------------------------------------------------------------------------------
/src/assets/courses/testimonials/sagar_rawat.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/courses/testimonials/sagar_rawat.jpg
--------------------------------------------------------------------------------
/src/assets/events/educational.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/events/educational.jpg
--------------------------------------------------------------------------------
/src/assets/events/hackathon.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/events/hackathon.jpg
--------------------------------------------------------------------------------
/src/assets/events/hashnode.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/events/hashnode.jpg
--------------------------------------------------------------------------------
/src/assets/events/meetup.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/events/meetup.jpeg
--------------------------------------------------------------------------------
/src/assets/events/past-event-1.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/events/past-event-1.jpeg
--------------------------------------------------------------------------------
/src/assets/events/past-event-2.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/events/past-event-2.jpeg
--------------------------------------------------------------------------------
/src/assets/events/past-event-3.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/events/past-event-3.jpeg
--------------------------------------------------------------------------------
/src/assets/events/past-event-4.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/events/past-event-4.jpeg
--------------------------------------------------------------------------------
/src/assets/events/past-event-5.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/events/past-event-5.jpeg
--------------------------------------------------------------------------------
/src/assets/events/past-event-6.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/events/past-event-6.jpeg
--------------------------------------------------------------------------------
/src/assets/events/past-event-7.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/events/past-event-7.jpeg
--------------------------------------------------------------------------------
/src/assets/events/past-event-8.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/events/past-event-8.jpeg
--------------------------------------------------------------------------------
/src/assets/events/roads.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/events/roads.jpg
--------------------------------------------------------------------------------
/src/assets/events/scholarship.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/events/scholarship.jpg
--------------------------------------------------------------------------------
/src/assets/events/super25.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/events/super25.jpg
--------------------------------------------------------------------------------
/src/assets/events/webinar.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/events/webinar.jpg
--------------------------------------------------------------------------------
/src/assets/hackathon/napptive/Banner.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/hackathon/napptive/Banner.jpg
--------------------------------------------------------------------------------
/src/assets/hackathon/napptive/Steve.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/hackathon/napptive/Steve.jpeg
--------------------------------------------------------------------------------
/src/assets/hackathon/napptive/theme.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/hackathon/napptive/theme.png
--------------------------------------------------------------------------------
/src/assets/hackathon/syncloop/1st.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/hackathon/syncloop/1st.png
--------------------------------------------------------------------------------
/src/assets/hackathon/syncloop/2nd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/hackathon/syncloop/2nd.png
--------------------------------------------------------------------------------
/src/assets/hackathon/syncloop/3rd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/hackathon/syncloop/3rd.png
--------------------------------------------------------------------------------
/src/assets/hackathon/syncloop/Banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/hackathon/syncloop/Banner.png
--------------------------------------------------------------------------------
/src/assets/hackathon/syncloop/judge.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/hackathon/syncloop/judge.jpg
--------------------------------------------------------------------------------
/src/assets/hackathon/syncloop/judge1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/hackathon/syncloop/judge1.jpg
--------------------------------------------------------------------------------
/src/assets/hackathon/syncloop/theme.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/hackathon/syncloop/theme.png
--------------------------------------------------------------------------------
/src/assets/hashnode/3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/hashnode/3.png
--------------------------------------------------------------------------------
/src/assets/hashnode/Grand-Prize.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/hashnode/Grand-Prize.png
--------------------------------------------------------------------------------
/src/assets/hashnode/Hashnode.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/hashnode/Hashnode.webp
--------------------------------------------------------------------------------
/src/assets/hashnode/Special-Prize.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/hashnode/Special-Prize.png
--------------------------------------------------------------------------------
/src/assets/hashnode/Special-Track.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/hashnode/Special-Track.png
--------------------------------------------------------------------------------
/src/assets/hashnode/Track-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/hashnode/Track-1.png
--------------------------------------------------------------------------------
/src/assets/hashnode/Track-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/hashnode/Track-2.png
--------------------------------------------------------------------------------
/src/assets/hashnode/Track-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/hashnode/Track-3.png
--------------------------------------------------------------------------------
/src/assets/hashnode/Track-4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/hashnode/Track-4.png
--------------------------------------------------------------------------------
/src/assets/home/aboutus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/home/aboutus.png
--------------------------------------------------------------------------------
/src/assets/home/courses.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/home/courses.png
--------------------------------------------------------------------------------
/src/assets/home/events.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/home/events.png
--------------------------------------------------------------------------------
/src/assets/home/latestevents.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/home/latestevents.png
--------------------------------------------------------------------------------
/src/assets/home/mentorship.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/home/mentorship.png
--------------------------------------------------------------------------------
/src/assets/home/newblogimage.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/home/newblogimage.jpg
--------------------------------------------------------------------------------
/src/assets/home/testimonials/anurag.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/home/testimonials/anurag.jpg
--------------------------------------------------------------------------------
/src/assets/home/testimonials/ekjottest2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/home/testimonials/ekjottest2.jpg
--------------------------------------------------------------------------------
/src/assets/home/testimonials/prasanna.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/home/testimonials/prasanna.jpg
--------------------------------------------------------------------------------
/src/assets/home/testimonials/rahultest1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/home/testimonials/rahultest1.jpg
--------------------------------------------------------------------------------
/src/assets/home/testimonials/sajjantest3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/home/testimonials/sajjantest3.jpg
--------------------------------------------------------------------------------
/src/assets/home/testimonials/sivanithin.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/home/testimonials/sivanithin.jpg
--------------------------------------------------------------------------------
/src/assets/images/new-tab.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/images/new-tab.png
--------------------------------------------------------------------------------
/src/assets/images/team/aayush.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/images/team/aayush.webp
--------------------------------------------------------------------------------
/src/assets/images/team/adarsh.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/images/team/adarsh.webp
--------------------------------------------------------------------------------
/src/assets/images/team/bhavya.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/images/team/bhavya.webp
--------------------------------------------------------------------------------
/src/assets/images/team/gauri.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/images/team/gauri.webp
--------------------------------------------------------------------------------
/src/assets/images/team/index.js:
--------------------------------------------------------------------------------
1 | import aayushImage from './aayush.webp';
2 | import adarshImage from './adarsh.webp';
3 | import bhavyaImage from './bhavya.webp';
4 | import gauriImage from './gauri.webp';
5 | import kunalImage from './kunal.webp';
6 |
7 | export { aayushImage, adarshImage, bhavyaImage, gauriImage, kunalImage };
8 |
--------------------------------------------------------------------------------
/src/assets/images/team/kunal.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/images/team/kunal.webp
--------------------------------------------------------------------------------
/src/assets/partner/bootdotdev.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/partner/bootdotdev.jpg
--------------------------------------------------------------------------------
/src/assets/partner/finout.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/partner/finout.jpg
--------------------------------------------------------------------------------
/src/assets/partner/komodor.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/partner/komodor.jpg
--------------------------------------------------------------------------------
/src/assets/partner/kubesphere.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/partner/kubesphere.jpg
--------------------------------------------------------------------------------
/src/assets/partner/stream.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/partner/stream.jpg
--------------------------------------------------------------------------------
/src/assets/partner/teleport.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/partner/teleport.png
--------------------------------------------------------------------------------
/src/assets/partner/wilco.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/partner/wilco.jpg
--------------------------------------------------------------------------------
/src/assets/webinars/DatabaseGuardrails.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/DatabaseGuardrails.png
--------------------------------------------------------------------------------
/src/assets/webinars/Deploy-With-Feature-Flags.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/Deploy-With-Feature-Flags.png
--------------------------------------------------------------------------------
/src/assets/webinars/Gopher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/Gopher.png
--------------------------------------------------------------------------------
/src/assets/webinars/ManageK8Applications.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/ManageK8Applications.jpg
--------------------------------------------------------------------------------
/src/assets/webinars/Maximising-Developer-Productivity-AI-Era.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/Maximising-Developer-Productivity-AI-Era.png
--------------------------------------------------------------------------------
/src/assets/webinars/Observability-devops.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/Observability-devops.jpg
--------------------------------------------------------------------------------
/src/assets/webinars/access-control.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/access-control.png
--------------------------------------------------------------------------------
/src/assets/webinars/autometrics.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/autometrics.png
--------------------------------------------------------------------------------
/src/assets/webinars/bite-size-otterize.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/bite-size-otterize.png
--------------------------------------------------------------------------------
/src/assets/webinars/chatops-for-k8s.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/chatops-for-k8s.png
--------------------------------------------------------------------------------
/src/assets/webinars/cloud-cost.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/cloud-cost.png
--------------------------------------------------------------------------------
/src/assets/webinars/configuration-as-code.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/configuration-as-code.jpg
--------------------------------------------------------------------------------
/src/assets/webinars/ebf.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/ebf.jpg
--------------------------------------------------------------------------------
/src/assets/webinars/headless-browser.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/headless-browser.jpg
--------------------------------------------------------------------------------
/src/assets/webinars/hero.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/hero.gif
--------------------------------------------------------------------------------
/src/assets/webinars/hero.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/hero.png
--------------------------------------------------------------------------------
/src/assets/webinars/kafka/poster.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/kafka/poster.png
--------------------------------------------------------------------------------
/src/assets/webinars/kafka/speaker.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/kafka/speaker.jpeg
--------------------------------------------------------------------------------
/src/assets/webinars/kafka/speaker1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/kafka/speaker1.jpg
--------------------------------------------------------------------------------
/src/assets/webinars/livecycle-docker-compose.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/livecycle-docker-compose.png
--------------------------------------------------------------------------------
/src/assets/webinars/no-code.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/no-code.jpg
--------------------------------------------------------------------------------
/src/assets/webinars/pulumi-webinar.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/pulumi-webinar.jpg
--------------------------------------------------------------------------------
/src/assets/webinars/simplify-deployments.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/simplify-deployments.png
--------------------------------------------------------------------------------
/src/assets/webinars/state-of-java.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/state-of-java.jpg
--------------------------------------------------------------------------------
/src/assets/webinars/surrealdb-webinar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/surrealdb-webinar.png
--------------------------------------------------------------------------------
/src/assets/webinars/zero-downtime.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WeMakeDevs/wemakedevs-archive/ee1bc891f487933fcd39db7401ca74ba68990a78/src/assets/webinars/zero-downtime.jpeg
--------------------------------------------------------------------------------
/src/components/Accordion/AccordionItem.jsx:
--------------------------------------------------------------------------------
1 | import { useRef } from 'react';
2 | import { FaMinus, FaPlus } from 'react-icons/fa';
3 |
4 | import clsxm from '@/lib/utils';
5 |
6 | import { HeaderLink } from '@/components/links';
7 |
8 | const AccordionItem = ({
9 | index,
10 | question,
11 | answer,
12 | link,
13 | activeItem,
14 | setActiveItem,
15 | }) => {
16 | const contentEl = useRef();
17 |
18 | return (
19 |
20 |
setActiveItem(index === activeItem ? -1 : index)}
25 | >
26 | {question}
27 |
28 | {index === activeItem ? : }
29 |
30 |
31 |
45 |
46 | {answer}{' '}
47 | {link && (
48 |
53 | {link.title}
54 |
55 | )}
56 |
57 |
58 |
59 | );
60 | };
61 |
62 | export default AccordionItem;
63 |
--------------------------------------------------------------------------------
/src/components/Accordion/index.jsx:
--------------------------------------------------------------------------------
1 | import { useState } from 'react';
2 |
3 | import AccordionItem from './AccordionItem';
4 |
5 | const Accordion = ({ data }) => {
6 | const [activeItem, setActiveItem] = useState('-1');
7 |
8 | return (
9 |
10 | {data.map((item, index) => (
11 |
18 | ))}
19 |
20 | );
21 | };
22 |
23 | export default Accordion;
24 |
--------------------------------------------------------------------------------
/src/components/Button.jsx:
--------------------------------------------------------------------------------
1 | import * as React from 'react';
2 | import { ImSpinner2 } from 'react-icons/im';
3 |
4 | import clsxm from '@/lib/utils';
5 |
6 | const Button = React.forwardRef(
7 | (
8 | {
9 | children,
10 | className,
11 | disabled: buttonDisabled,
12 | isLoading,
13 | variant = 'primary',
14 | isDarkBg = false,
15 | as,
16 | ...rest
17 | },
18 | ref
19 | ) => {
20 | const disabled = isLoading || buttonDisabled;
21 | const Component = as || 'button';
22 | return (
23 |
54 | {isLoading && (
55 |
61 |
62 |
63 | )}
64 | {children}
65 |
66 | );
67 | }
68 | );
69 |
70 | export default Button;
71 |
--------------------------------------------------------------------------------
/src/components/Cards/AgendaCard.jsx:
--------------------------------------------------------------------------------
1 | import clsxm, { getTime } from '@/lib/utils';
2 |
3 | const AgendaCard = ({ description, title, start, end, speaker, id }) => {
4 | return (
5 | <>
6 |
7 |
16 |
24 |
32 |
33 |
{title}
34 |
35 | {getTime(start)} - {getTime(end)}
36 |
37 |
{speaker}
38 |
{description}
39 |
40 |
41 |
42 | >
43 | );
44 | };
45 |
46 | export default AgendaCard;
47 |
--------------------------------------------------------------------------------
/src/components/Cards/CounterCard.jsx:
--------------------------------------------------------------------------------
1 | import CountUp from 'react-countup';
2 |
3 | const CounterCard = ({ icon: Icon, number, title, prefix = '' }) => {
4 | return (
5 |
6 |
7 |
8 |
9 |
10 |
20 |
21 |
{title}
22 |
23 | );
24 | };
25 |
26 | export default CounterCard;
27 |
--------------------------------------------------------------------------------
/src/components/Cards/DetailCard.jsx:
--------------------------------------------------------------------------------
1 | import { FaGithub } from 'react-icons/fa';
2 |
3 | import ArrowLink from '@/components/links/ArrowLink';
4 | import ButtonLink from '@/components/links/ButtonLink';
5 |
6 | const DetailCard = ({ image, title, description, url, btnText, git }) => {
7 | return (
8 |
9 |
14 |
15 |
{title}
16 |
{description}
17 |
18 | {url && (
19 |
20 | {btnText}
21 |
22 | )}
23 | {git && (
24 |
25 |
26 |
27 | )}
28 |
29 |
30 |
31 | );
32 | };
33 |
34 | export default DetailCard;
35 |
--------------------------------------------------------------------------------
/src/components/Cards/MeetupCard.jsx:
--------------------------------------------------------------------------------
1 | import { BsCalendar, BsClock } from 'react-icons/bs';
2 |
3 | import ArrowLink from '@/components/links/ArrowLink';
4 | import ButtonLink from '@/components/links/ButtonLink';
5 |
6 | const MeetupCard = ({ img, title, on, description, slug, link }) => {
7 | return (
8 |
9 |
14 |
15 |
{title}
16 |
{description}
17 |
18 | {new Date(on).toDateString()}
19 |
20 |
21 | {new Date(on).toLocaleTimeString()}{' '}
22 | {/\((.*)\)/
23 | .exec(new Date(on).toString())[1]
24 | .split(' ')
25 | .map((i) => i[0].toUpperCase())
26 | .join('')}
27 |
28 | {slug && (
29 |
35 | {new Date().getTime() < new Date(on).getTime()
36 | ? 'Register'
37 | : 'Recap'}
38 |
39 | )}
40 | {link && (
41 |
42 | Learn more
43 |
44 | )}
45 |
46 |
47 | );
48 | };
49 |
50 | export default MeetupCard;
51 |
--------------------------------------------------------------------------------
/src/components/Cards/SpeakerCard.jsx:
--------------------------------------------------------------------------------
1 | import { BsLinkedin, BsTwitter } from 'react-icons/bs';
2 |
3 | import UnstyledLink from '@/components/links/UnstyledLink';
4 |
5 | const SpeakerCard = ({ img, name, description, linkedin, twitter }) => {
6 | return (
7 |
8 | {img && (
9 |
14 | )}
15 |
16 |
{name}
17 |
{description}
18 | {twitter && (
19 |
23 | @{twitter}
24 |
25 | )}
26 | {linkedin && (
27 |
31 | LinkedIn
32 |
33 | )}
34 |
35 | );
36 | };
37 |
38 | export default SpeakerCard;
39 |
--------------------------------------------------------------------------------
/src/components/Cards/SponserCard.jsx:
--------------------------------------------------------------------------------
1 | import { UnstyledLink } from '@/components/links';
2 | const SponserCard = ({ src, name, url }) => {
3 | return (
4 |
5 |
6 |
11 | {name}
12 |
13 |
14 | );
15 | };
16 |
17 | export default SponserCard;
18 |
--------------------------------------------------------------------------------
/src/components/Cards/StatCard.jsx:
--------------------------------------------------------------------------------
1 | const StatCard = ({ icon: Icon, number, title, prefix = '', suffix = '+' }) => {
2 | return (
3 |
4 |
5 |
6 |
7 |
8 | {prefix}
9 | {number}
10 | {suffix}
11 |
12 |
{title}
13 |
14 | );
15 | };
16 |
17 | export default StatCard;
18 |
--------------------------------------------------------------------------------
/src/components/Cards/TeamMemberCard.jsx:
--------------------------------------------------------------------------------
1 | const TeamMemberCard = ({ name, role, description, socials, img }) => {
2 | return (
3 |
4 |
5 |
6 |
7 |
{name}
8 |
{role}
9 |
10 |
11 |
{description}
12 |
13 | {socials.map((social, index) => (
14 |
15 |
16 |
17 | ))}
18 |
19 |
20 |
21 |
22 | );
23 | };
24 |
25 | export default TeamMemberCard;
26 |
--------------------------------------------------------------------------------
/src/components/Cards/TestimonialCard.jsx:
--------------------------------------------------------------------------------
1 | const TestimonialCard = ({ src, description, from }) => {
2 | return (
3 |
4 |
9 |
{description}
10 |
11 |
{from}
12 |
13 | );
14 | };
15 |
16 | export default TestimonialCard;
17 |
--------------------------------------------------------------------------------
/src/components/Cards/TimeLineCard.jsx:
--------------------------------------------------------------------------------
1 | import { AiOutlineCalendar } from 'react-icons/ai';
2 |
3 | import { ArrowLink, ButtonLink } from '@/components/links';
4 |
5 | const TimeLineCard = ({ title, date, isLink, onlyDate, end }) => {
6 | return (
7 |
8 |
12 |
13 |
{title}
14 | {isLink ? (
15 |
20 | Youtube
21 |
22 | ) : (
23 |
24 | {new Date(date).toLocaleDateString('en-US', {
25 | dateStyle: 'medium',
26 | })}{' '}
27 | {!onlyDate && (
28 | <>
29 | {new Date(date).toLocaleTimeString('en-US', {
30 | timeStyle: 'short',
31 | })}{' '}
32 | {end && (
33 | <>
34 | {' - '}
35 | {new Date(end).toLocaleTimeString('en-US', {
36 | timeStyle: 'short',
37 | })}{' '}
38 | >
39 | )}
40 | {/\((.*)\)/
41 | .exec(new Date(date).toString())[1]
42 | .split(' ')
43 | .map((i) => i[0].toUpperCase())
44 | .join('')}{' '}
45 | >
46 | )}
47 |
48 | )}
49 |
50 |
51 | );
52 | };
53 |
54 | export default TimeLineCard;
55 |
--------------------------------------------------------------------------------
/src/components/Cards/TrackCard.jsx:
--------------------------------------------------------------------------------
1 | const TrackCard = ({ image, title, description }) => {
2 | return (
3 |
4 |
9 |
10 |
{title}
11 |
{description}
12 |
13 |
14 | );
15 | };
16 |
17 | export default TrackCard;
18 |
--------------------------------------------------------------------------------
/src/components/Cards/WebinarCard.jsx:
--------------------------------------------------------------------------------
1 | import { BsCalendar, BsClock } from 'react-icons/bs';
2 |
3 | import { getTime, getTimeZone } from '@/lib/utils';
4 |
5 | import { ArrowLink, ButtonLink } from '@/components/links';
6 |
7 | const WebinarCard = ({ img, title, time, description, slug }) => {
8 | const href = slug.includes('https://www.youtube.com/watch?v=')
9 | ? slug
10 | : `/events/webinars/${slug}`;
11 | return (
12 |
13 |
18 |
19 |
{title}
20 |
{description}
21 |
22 | {new Date(time).toDateString()}
23 |
24 |
25 |
26 | {getTime(time)} {getTimeZone(time)}
27 |
28 |
29 | {new Date().getTime() < new Date(time).getTime()
30 | ? 'Register'
31 | : 'Recap'}
32 |
33 |
34 |
35 | );
36 | };
37 |
38 | export default WebinarCard;
39 |
--------------------------------------------------------------------------------
/src/components/Listitem.jsx:
--------------------------------------------------------------------------------
1 | import { AiFillStar } from 'react-icons/ai';
2 |
3 | import clsxm from '@/lib/utils';
4 |
5 | const ListItem = ({ as, children, className, icon, iconClassName }) => {
6 | const Component = as || 'li';
7 | const Icon = icon || AiFillStar;
8 | return (
9 |
16 |
20 | {children}
21 |
22 | );
23 | };
24 |
25 | export default ListItem;
26 |
--------------------------------------------------------------------------------
/src/components/PageComp/CoursesPage/About.jsx:
--------------------------------------------------------------------------------
1 | import AboutImage from 'assets/home/aboutus.png';
2 |
3 | import ColumnSection from '@/components/layout/ColumnSection';
4 | import ListItem from '@/components/Listitem';
5 |
6 | const About = () => {
7 | return (
8 |
9 |
10 | Explore events in various domains to We believe that every student,
11 | irrespective of their college or branch, can make it big.
12 |
13 |
14 | All of our courses are FREE while never compromising on quality.
15 |
16 |
17 | We cover every topic in detail with a hands-on approach and mentor you
18 | with career, Open Source, and internships, jobs around the world.
19 |
20 |
21 | );
22 | };
23 |
24 | export default About;
25 |
--------------------------------------------------------------------------------
/src/components/PageComp/CoursesPage/Courses.jsx:
--------------------------------------------------------------------------------
1 | import Devops from 'assets/courses/devops.jpg';
2 | import DSA from 'assets/courses/dsa.jpg';
3 | import GitGithub from 'assets/courses/git-github.jpg';
4 | import OpenSource from 'assets/courses/opensource.jpeg';
5 |
6 | import DetailCard from '../../Cards/DetailCard';
7 |
8 | const Courses = () => {
9 | return (
10 |
11 |
12 |
Courses
13 |
14 |
15 | {courses.map((hashnode) => (
16 |
17 | ))}
18 |
19 |
20 |
21 | );
22 | };
23 |
24 | export default Courses;
25 |
26 | const courses = [
27 | {
28 | title: 'Data Structures & Algorithms in Java',
29 | description:
30 | 'Get interview-ready with this course that has no prerequisites and is designed to make you an expert in solving easy to hard LeetCode problems with ease. ',
31 | image: DSA,
32 | url: '/courses/dsa',
33 | btnText: 'Learn more',
34 | },
35 | {
36 | title: 'Git & GitHub',
37 | description:
38 | 'Kick-off your Open Source journey with the complete Git & GitHub tutorial covering all the fundamentals and advance concepts with a hands-on approach.',
39 | image: GitGithub,
40 | url: '/courses/git-github',
41 | btnText: 'Learn more',
42 | },
43 | {
44 | title: 'DevOps',
45 | description:
46 | 'Without a doubt, DevOps engineer is the most in-demand role in the current market, especially with an increased number of high paying remote opportunities.',
47 | image: Devops,
48 | url: '/courses/devops',
49 | btnText: 'Learn more',
50 | },
51 | {
52 | title: 'Open Source',
53 | description:
54 | 'Welcome to the immersive Open Source Course, where we empower individuals with skills to thrive in open source. Dive into this comprehensive program to explore open source principles, contribute to projects, and excel in the tech industry.',
55 | image: OpenSource,
56 | url: '/courses/opensource',
57 | btnText: 'Learn more',
58 | },
59 | ];
60 |
--------------------------------------------------------------------------------
/src/components/PageComp/CoursesPage/Hero.jsx:
--------------------------------------------------------------------------------
1 | import ArrowLink from '@/components/links/ArrowLink';
2 | import ButtonLink from '@/components/links/ButtonLink';
3 |
4 | const Hero = () => {
5 | return (
6 |
22 | );
23 | };
24 | export default Hero;
25 |
--------------------------------------------------------------------------------
/src/components/PageComp/CoursesPage/index.js:
--------------------------------------------------------------------------------
1 | export { default as About } from './About';
2 | export { default as Courses } from './Courses';
3 | export { default as Hero } from './Hero';
4 |
--------------------------------------------------------------------------------
/src/components/PageComp/EducationalEventsPage/Hero.jsx:
--------------------------------------------------------------------------------
1 | import ArrowLink from '@/components/links/ArrowLink';
2 | import ButtonLink from '@/components/links/ButtonLink';
3 |
4 | const Hero = () => {
5 | return (
6 |
7 |
8 |
9 | Dive into our
10 |
11 | Educational Events{' '}
12 |
13 |
14 |
15 | Expand your horizons and embrace the joy of lifelong learning by
16 | immersing yourself in inspiring educational events designed to fuel
17 | your passion for knowledge and empower your future success.
18 |
19 |
20 | About events
21 |
22 |
23 |
24 | );
25 | };
26 | export default Hero;
27 |
--------------------------------------------------------------------------------
/src/components/PageComp/EducationalEventsPage/OngoingEvents.jsx:
--------------------------------------------------------------------------------
1 | const OngoingEvents = () => {
2 | return (
3 |
4 |
5 |
Ongoing events
6 |
7 |
8 |
There no ongoing events right now
9 |
10 |
11 |
12 | );
13 | };
14 |
15 | export default OngoingEvents;
16 |
--------------------------------------------------------------------------------
/src/components/PageComp/EducationalEventsPage/Testimonial.jsx:
--------------------------------------------------------------------------------
1 | import Carousel from 'better-react-carousel';
2 | import { AiFillLeftCircle, AiFillRightCircle } from 'react-icons/ai';
3 |
4 | import clsxm from '@/lib/utils';
5 |
6 | import data from '@/content/Educational/Testimonials';
7 |
8 | import TestimonialCard from '@/components/Cards/TestimonialCard';
9 |
10 | const Testimonials = ({ as }) => {
11 | const Component = as || 'div';
12 | return (
13 |
14 |
15 |
Testimonials
16 |
17 |
18 |
29 | }
30 | arrowLeft={
31 |
35 | }
36 | showDots
37 | loop
38 | >
39 | {data.map((item) => (
40 |
41 |
42 |
43 | ))}
44 |
45 |
46 |
47 |
48 | );
49 | };
50 |
51 | export default Testimonials;
52 |
--------------------------------------------------------------------------------
/src/components/PageComp/EducationalEventsPage/index.js:
--------------------------------------------------------------------------------
1 | export { default as Hero } from './Hero';
2 | export { default as OngoingEvents } from './OngoingEvents';
3 | export { default as PastEvents } from './PastEvents';
4 | export { default as Testimonials } from './Testimonial';
5 |
--------------------------------------------------------------------------------
/src/components/PageComp/EventsPage/About.jsx:
--------------------------------------------------------------------------------
1 | import AboutImage from 'assets/home/aboutus.png';
2 | import { useState } from 'react';
3 |
4 | import prizetweetid from '@/content/prizetweetid';
5 |
6 | import { Testimonials } from '@/components/layout';
7 | import ColumnSection from '@/components/layout/ColumnSection';
8 | import ListItem from '@/components/Listitem';
9 |
10 | import Stats from './Stats';
11 |
12 | const About = () => {
13 | const [tweetId, setTweetId] = useState(prizetweetid);
14 | return (
15 |
16 |
17 |
18 | Explore events in various domains to{' '}
19 | upskill yourself.
20 |
21 |
22 | Network with{' '}
23 | industry experts ,
24 | and win amazing prizes by{' '}
25 |
26 | showcasing your knowledge.
27 |
28 |
29 |
30 | We have something for everyone, ranging from a diverse group of events
31 | such as{' '}
32 |
33 | mentorship sessions, hackathons, and tech deep dives.
34 |
35 |
36 |
37 |
38 |
45 |
46 | );
47 | };
48 |
49 | export default About;
50 |
--------------------------------------------------------------------------------
/src/components/PageComp/EventsPage/Hero.jsx:
--------------------------------------------------------------------------------
1 | import ArrowLink from '@/components/links/ArrowLink';
2 | import ButtonLink from '@/components/links/ButtonLink';
3 |
4 | const Hero = () => {
5 | return (
6 |
7 |
8 |
9 | Events that inspire{' '}
10 |
11 |
12 | Want to give back to the{' '}
13 | community ,
14 | compete for awesome{' '}
15 | rewards network,
16 | and gain knowledge? 🎁
17 | If so, you've come to the correct place. Participate in the numerous{' '}
18 |
19 | incredible events{' '}
20 | {' '}
21 | hosted by the WeMakeDevs community. Check out the following events and
22 | participate.
23 |
24 |
25 | Learn more
26 |
27 |
28 |
29 | );
30 | };
31 | export default Hero;
32 |
--------------------------------------------------------------------------------
/src/components/PageComp/EventsPage/OngoingEvents.jsx:
--------------------------------------------------------------------------------
1 | import Hashnode from 'assets/hashnode/Special-Prize.png';
2 |
3 | import DetailCard from '@/components/Cards/DetailCard';
4 |
5 | const OngoingEvents = () => {
6 | return (
7 |
8 |
9 |
Ongoing events
10 |
11 |
12 |
18 |
19 |
20 |
21 | );
22 | };
23 |
24 | export default OngoingEvents;
25 |
--------------------------------------------------------------------------------
/src/components/PageComp/EventsPage/Stats.jsx:
--------------------------------------------------------------------------------
1 | import { FaFontAwesomeFlag, FaUsers } from 'react-icons/fa';
2 | import { MdOutlineAttachMoney } from 'react-icons/md';
3 | import { VscSymbolEvent } from 'react-icons/vsc';
4 |
5 | import CounterCard from '@/components/Cards/CounterCard';
6 |
7 | const Stats = () => {
8 | return (
9 |
10 |
Numbers say it all
11 |
12 |
13 |
19 |
20 |
21 |
22 |
23 |
24 | );
25 | };
26 |
27 | export default Stats;
28 |
--------------------------------------------------------------------------------
/src/components/PageComp/EventsPage/index.js:
--------------------------------------------------------------------------------
1 | export { default as About } from './About';
2 | export { default as EventCategories } from './EventCategories';
3 | export { default as Hero } from './Hero';
4 | export { default as OngoingEvents } from './OngoingEvents';
5 | export { default as PastEvents } from './PastEvents';
6 |
--------------------------------------------------------------------------------
/src/components/PageComp/HackathonsPage/About.jsx:
--------------------------------------------------------------------------------
1 | import AboutImage from 'assets/events/hackathon.jpg';
2 |
3 | import ColumnSection from '@/components/layout/ColumnSection';
4 | import ListItem from '@/components/Listitem';
5 |
6 | const About = () => {
7 | return (
8 |
9 |
10 |
11 | Embrace teamwork and collaboration in our inclusive and supportive
12 | environment.
13 |
14 |
15 | Exciting prizes and valuable networking opportunities await
16 | top-performing participants.
17 |
18 |
19 | Diverse themes ensure a wide range of hackathon experiences for all
20 | interests.
21 |
22 |
23 |
24 | );
25 | };
26 |
27 | export default About;
28 |
--------------------------------------------------------------------------------
/src/components/PageComp/HackathonsPage/Hero.jsx:
--------------------------------------------------------------------------------
1 | import ArrowLink from '@/components/links/ArrowLink';
2 | import ButtonLink from '@/components/links/ButtonLink';
3 |
4 | const Hero = () => {
5 | return (
6 |
7 |
8 |
9 | Unleash your innovation at our
10 |
11 | Hackathons
12 |
13 |
14 |
15 | Unleash your coding prowess at our exhilarating hackathons.
16 | Collaborate, innovate, and showcase your projects!
17 |
18 |
19 | About hackathons
20 |
21 |
22 |
23 | );
24 | };
25 | export default Hero;
26 |
--------------------------------------------------------------------------------
/src/components/PageComp/HackathonsPage/OngoingEvents.jsx:
--------------------------------------------------------------------------------
1 | import { hackathonDataList } from '@/content/Hackathons';
2 |
3 | import DetailCard from '@/components/Cards/DetailCard';
4 |
5 | const OngoingEvents = () => {
6 | return (
7 |
8 |
9 |
Ongoing events
10 |
11 |
12 | {hackathonDataList.filter(
13 | (hack) => new Date().getTime() < new Date(hack.date).getTime()
14 | ).length > 0 ? (
15 | hackathonDataList
16 | .filter(
17 | (web) => new Date().getTime() < new Date(web.date).getTime()
18 | )
19 | .map((hack) => {
20 | return
;
21 | })
22 | ) : (
23 |
There no upcoming hackathons right now
24 | )}
25 |
26 |
27 |
28 | );
29 | };
30 |
31 | export default OngoingEvents;
32 |
--------------------------------------------------------------------------------
/src/components/PageComp/HackathonsPage/PastEvents.jsx:
--------------------------------------------------------------------------------
1 | import { hackathonDataList } from '@/content/Hackathons';
2 |
3 | import DetailCard from '@/components/Cards/DetailCard';
4 |
5 | const PastEvents = () => {
6 | return (
7 |
8 |
9 |
Past events
10 |
11 |
12 | {hackathonDataList.filter(
13 | (hack) => new Date().getTime() > new Date(hack.date).getTime()
14 | ).length > 0 ? (
15 | hackathonDataList
16 | .filter(
17 | (web) => new Date().getTime() > new Date(web.date).getTime()
18 | )
19 | .map((hack) => {
20 | return
;
21 | })
22 | ) : (
23 |
There no past hackathons right now
24 | )}
25 |
26 |
27 |
28 | );
29 | };
30 |
31 | export default PastEvents;
32 |
--------------------------------------------------------------------------------
/src/components/PageComp/HackathonsPage/Stats.jsx:
--------------------------------------------------------------------------------
1 | import { FaFontAwesomeFlag, FaUsers } from 'react-icons/fa';
2 | import { MdOutlineAttachMoney } from 'react-icons/md';
3 |
4 | import CounterCard from '@/components/Cards/CounterCard';
5 |
6 | const Stats = () => {
7 | return (
8 |
9 |
Numbers say it all
10 |
11 |
12 |
18 |
19 |
20 |
21 |
22 | );
23 | };
24 |
25 | export default Stats;
26 |
--------------------------------------------------------------------------------
/src/components/PageComp/HackathonsPage/Testimonials.jsx:
--------------------------------------------------------------------------------
1 | import Carousel from 'better-react-carousel';
2 | import { AiFillLeftCircle, AiFillRightCircle } from 'react-icons/ai';
3 |
4 | import clsxm from '@/lib/utils';
5 |
6 | import data from '@/content/Hackathons/Testimonial';
7 |
8 | import TestimonialCard from '@/components/Cards/TestimonialCard';
9 |
10 | const Testimonials = ({ as }) => {
11 | const Component = as || 'div';
12 | return (
13 |
14 |
15 |
Testimonials
16 |
17 |
18 |
29 | }
30 | arrowLeft={
31 |
35 | }
36 | showDots
37 | loop
38 | >
39 | {data.map((item) => (
40 |
41 |
42 |
43 | ))}
44 |
45 |
46 |
47 |
48 | );
49 | };
50 |
51 | export default Testimonials;
52 |
--------------------------------------------------------------------------------
/src/components/PageComp/HackathonsPage/index.js:
--------------------------------------------------------------------------------
1 | export { default as About } from './About';
2 | export { default as Hero } from './Hero';
3 | export { default as OngoingEvents } from './OngoingEvents';
4 | export { default as PastEvents } from './PastEvents';
5 | export { default as Stats } from './Stats';
6 | export { default as Testimonials } from './Testimonials';
7 |
--------------------------------------------------------------------------------
/src/components/PageComp/HashnodePage/About.jsx:
--------------------------------------------------------------------------------
1 | import ColumnSection from '@/components/layout/ColumnSection';
2 | import ListItem from '@/components/Listitem';
3 |
4 | const About = ({ background = 'static' }) => {
5 | return (
6 |
14 |
15 | The motivation behind this series is to promote learning in public.
16 |
17 |
18 | Students will get hands on experience with new & interesting tools.
19 | Don't worry, we have got your back! We will be providing resources.
20 |
21 |
22 | Don't know how to create a personal brand? You have come to the right
23 | place.
24 |
25 | Get ready to win some swags & grand prizes.
26 |
27 | Four track-based blogging challenges every month. Every track will cover
28 | a variety of topics.
29 |
30 |
31 | );
32 | };
33 |
34 | export default About;
35 |
--------------------------------------------------------------------------------
/src/components/PageComp/HashnodePage/Announcement/index.jsx:
--------------------------------------------------------------------------------
1 | import clsx from 'clsx';
2 |
3 | import styles from './index.module.css';
4 |
5 | const Announcement = () => {
6 | const progress = 3;
7 | const total = 4;
8 | return (
9 |
10 |
11 |
12 | INR ₹
13 | 25000
14 |
15 |
16 | Write blogs for 4 months in a row to enter a raffle for INR 25,000. 25
17 | such folks will also receive a private 1:1 mentorship with Kunal
18 | Kushwaha
19 |
20 |
21 |
22 |
23 |
31 |
37 | {progress}
38 | of {total} months completed
39 |
40 |
41 |
42 |
43 | );
44 | };
45 |
46 | export default Announcement;
47 |
--------------------------------------------------------------------------------
/src/components/PageComp/HashnodePage/GrandPrize.jsx:
--------------------------------------------------------------------------------
1 | import Hashnode from 'assets/hashnode/Special-Prize.png';
2 |
3 | const GrandPrize = () => {
4 | return (
5 |
6 |
7 |
Current event & prize
8 |
9 |
14 |
15 |
16 | );
17 | };
18 |
19 | export default GrandPrize;
20 |
--------------------------------------------------------------------------------
/src/components/PageComp/HashnodePage/Hero.jsx:
--------------------------------------------------------------------------------
1 | import { SiHashnode } from 'react-icons/si';
2 |
3 | const Hero = () => {
4 | return (
5 |
6 |
7 |
8 | WeMakeDevs {' '}
9 | Blogging Challenge
10 |
11 |
12 | Powered by hashnode{' '}
13 |
14 |
15 |
16 | Get a chance to win exciting prizes such as{' '}
17 | MacBooks, iPhones, iPads and more every month 🤩
18 |
19 |
20 | Blogging is about
21 | being yourself and putting what you have into it.
22 |
23 |
24 |
25 | );
26 | };
27 | export default Hero;
28 |
--------------------------------------------------------------------------------
/src/components/PageComp/HashnodePage/HowTakePart.jsx:
--------------------------------------------------------------------------------
1 | import { useState } from 'react';
2 |
3 | import prizetweetid from '@/content/prizetweetid';
4 |
5 | import { Testimonials } from '@/components/layout';
6 | import ColumnSection from '@/components/layout/ColumnSection';
7 | import ListItem from '@/components/Listitem';
8 |
9 | const HowTakePart = ({ background = 'static' }) => {
10 | const [tweetId, setTweetId] = useState(prizetweetid);
11 | return (
12 |
13 |
22 |
23 | Write and publish a blog of the given themes on hashnode and{' '}
24 |
25 | use the hashtag #WeMakeDevs while publishing it.
26 | {' '}
27 |
28 |
29 | Share your blogs on Twitter and{' '}
30 |
31 | tag @WeMakeDevs and @hashnode.
32 |
33 |
34 |
35 | We will select monthly winners from each track who will get some
36 | exclusive swag!
37 |
38 |
39 |
46 |
47 | );
48 | };
49 |
50 | export default HowTakePart;
51 |
--------------------------------------------------------------------------------
/src/components/PageComp/HashnodePage/Tracks.jsx:
--------------------------------------------------------------------------------
1 | import Special from 'assets/hashnode/Special-Track.png';
2 | import Track1 from 'assets/hashnode/Track-1.png';
3 | import Track2 from 'assets/hashnode/Track-2.png';
4 | import Track3 from 'assets/hashnode/Track-3.png';
5 | import Track4 from 'assets/hashnode/Track-4.png';
6 |
7 | import TrackCard from '@/components/Cards/TrackCard';
8 |
9 | const Tracks = () => {
10 | return (
11 |
12 |
13 |
Current Tracks
14 |
15 |
16 | {hashnodeData.map((event) => (
17 |
18 | ))}
19 |
20 |
21 |
22 | );
23 | };
24 |
25 | export default Tracks;
26 |
27 | const hashnodeData = [
28 | {
29 | description:
30 | 'Write a blog on Artificial Intelligence, share some of your experiences in AI, how they have benefitted you and how you got involved in them',
31 | image: Track1,
32 | },
33 | {
34 | description:
35 | 'Write a blog on Development, share about some of your projects, how you got started with them and what you learnt from them',
36 | image: Track2,
37 | },
38 | {
39 | description:
40 | 'Write a blog on DevOps, share some of the best practices you follow, and how they have helped you in your projects',
41 | image: Track3,
42 | },
43 | {
44 | description:
45 | 'Write a blog on Security, share some of the best practices you follow, and how one can get started with them',
46 | image: Track4,
47 | },
48 | {
49 | description:
50 | "It is all about a free topic, you can write about anything you want, it can be about your experiences, your journey, your learnings, anything you want to share with the world. Let's see what you have got!",
51 | image: Special,
52 | },
53 | ];
54 |
--------------------------------------------------------------------------------
/src/components/PageComp/HashnodePage/index.js:
--------------------------------------------------------------------------------
1 | export { default as About } from './About';
2 | export { default as Announcement } from './Announcement';
3 | export { default as GrandPrize } from './GrandPrize';
4 | export { default as Hero } from './Hero';
5 | export { default as HowTakePart } from './HowTakePart';
6 | export { default as Tracks } from './Tracks';
7 |
--------------------------------------------------------------------------------
/src/components/PageComp/HomePage/About.jsx:
--------------------------------------------------------------------------------
1 | import AboutImage from 'assets/home/aboutus.png';
2 |
3 | import ColumnSection from '@/components/layout/ColumnSection';
4 | import ListItem from '@/components/Listitem';
5 |
6 | import Stats from './Stats';
7 |
8 | const About = () => {
9 | return (
10 |
11 |
31 |
32 | We believe that everyone, irrespective of their college or branch,
33 | technical or non-technical background can make it big.{' '}
34 |
35 | {' '}
36 | WeMakeDevs is an initiative built on this thought.{' '}
37 |
38 |
39 |
40 | We provide{' '}
41 |
42 | hands-on training, mentorship for FREE
43 | {' '}
44 | and have an{' '}
45 |
46 | inclusive community.
47 |
48 |
49 |
50 | Get{' '}
51 |
52 | expert guidance with career
53 |
54 | , Open Source, and internships, jobs around the world.
55 |
56 |
57 | We are also having various{' '}
58 |
59 | events weekly or monthly.{' '}
60 |
61 | Do participate in those events to make your skills enhance.
62 |
63 |
64 |
65 |
66 | );
67 | };
68 |
69 | export default About;
70 |
--------------------------------------------------------------------------------
/src/components/PageComp/HomePage/Courses.jsx:
--------------------------------------------------------------------------------
1 | import BannerImage from 'assets/home/courses.png';
2 |
3 | import ColumnSection from '@/components/layout/ColumnSection';
4 | import ListItem from '@/components/Listitem';
5 |
6 | import { Testimonials, Work } from '.';
7 |
8 | const Courses = ({ background = 'static' }) => {
9 | return (
10 |
11 |
24 |
25 | All courses are FREE while never compromising on quality.
26 |
27 |
28 | We cover every topic in detail with a hands-on approach and mentor you
29 | to stand out to get opportunities by breaking all the barriers.
30 |
31 |
32 | Explore a wide range of courses including Data Structures &
33 | Algorithms, Web Development, DevOps, Machine Learning, and more!
34 |
35 |
36 | $0/month
37 |
38 |
39 |
40 |
41 |
42 | );
43 | };
44 |
45 | export default Courses;
46 |
--------------------------------------------------------------------------------
/src/components/PageComp/HomePage/Events.jsx:
--------------------------------------------------------------------------------
1 | import BannerImage from 'assets/home/latestevents.png';
2 | import { useState } from 'react';
3 |
4 | import prizetweetid from '@/content/prizetweetid';
5 |
6 | import { Testimonials } from '@/components/layout';
7 | import ColumnSection from '@/components/layout/ColumnSection';
8 | import ListItem from '@/components/Listitem';
9 |
10 | const Events = () => {
11 | const [tweetId, setTweetId] = useState(prizetweetid);
12 | return (
13 |
14 |
27 |
28 |
29 | All of our events are completely free and open for everyone.
30 | {' '}
31 | Fun-filled events with no compromise on quality.
32 |
33 |
34 | Events conducted will help{' '}
35 |
36 | develop various skills of students{' '}
37 |
38 | in co-curricular activities and to expose them to the current trends
39 | in the technical and professional fields.
40 |
41 |
42 | Explore the plethora of events & have the opportunity to{' '}
43 |
44 | grab amazing prizes & goodies!
45 |
46 |
47 |
48 |
55 |
56 | );
57 | };
58 |
59 | export default Events;
60 |
--------------------------------------------------------------------------------
/src/components/PageComp/HomePage/Hero.jsx:
--------------------------------------------------------------------------------
1 | import ArrowLink from '@/components/links/ArrowLink';
2 | import ButtonLink from '@/components/links/ButtonLink';
3 |
4 | const Hero = () => {
5 | return (
6 |
7 |
8 |
Inspire. Educate. Empower
9 |
10 | This is a community which provides{' '}
11 |
12 | free hands-on training
13 | {' '}
14 | in various fields of computer science and have an inclusive community
15 | focusing on a{' '}
16 | learn by doing {' '}
17 | approach.
18 |
19 |
20 |
21 | Courses
22 |
23 |
24 | Events
25 |
26 |
27 | Newsroom
28 |
29 |
30 |
31 |
32 | );
33 | };
34 |
35 | export default Hero;
36 |
--------------------------------------------------------------------------------
/src/components/PageComp/HomePage/Mentorship.jsx:
--------------------------------------------------------------------------------
1 | import BannerImage from 'assets/home/mentorship.png';
2 |
3 | import ColumnSection from '@/components/layout/ColumnSection';
4 | import ListItem from '@/components/Listitem';
5 |
6 | const Mentorship = ({ background = 'static' }) => {
7 | return (
8 |
20 |
21 |
22 | A complete solution to address all of your mentoring requirements.
23 |
24 | , including educational materials, communities to join, opportunities,
25 | and much more.
26 |
27 |
28 |
29 | Roadmaps to guide you towards a successful career,
30 |
31 | , including those for open-source, full-stack, devrel, and more.
32 |
33 |
34 | );
35 | };
36 |
37 | export default Mentorship;
38 |
--------------------------------------------------------------------------------
/src/components/PageComp/HomePage/Stats.jsx:
--------------------------------------------------------------------------------
1 | import { FaGraduationCap, FaMagic, FaUsers, FaYoutube } from 'react-icons/fa';
2 |
3 | import CounterCard from '@/components/Cards/CounterCard';
4 |
5 | const Stats = () => {
6 | return (
7 |
8 |
Numbers say it all
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 | );
18 | };
19 |
20 | export default Stats;
21 |
--------------------------------------------------------------------------------
/src/components/PageComp/HomePage/index.js:
--------------------------------------------------------------------------------
1 | export { default as About } from './About';
2 | export { default as Content } from './Content';
3 | export { default as Courses } from './Courses.jsx';
4 | export { default as Events } from './Events';
5 | export { default as Hero } from './Hero';
6 | export { default as Mentorship } from './Mentorship';
7 | export { default as Stats } from './Stats';
8 | export { default as Team } from './Team';
9 | export { default as Testimonials } from './Testimonials';
10 | export { default as Work } from './Work';
11 |
--------------------------------------------------------------------------------
/src/components/PageComp/IndividualWebinar/About.jsx:
--------------------------------------------------------------------------------
1 | import ArrowLink from '@/components/links/ArrowLink';
2 | import ButtonLink from '@/components/links/ButtonLink';
3 |
4 | const About = ({ content }) => {
5 | return (
6 |
7 |
8 |
9 | {content.name}
10 |
11 |
{content.description}
12 | {content.videoUrl &&
13 | new Date().getTime() > new Date(content.time).getTime() ? (
14 |
21 | ) : (
22 |
26 | )}
27 |
28 |
40 | {new Date().getTime() < new Date(content.time).getTime()
41 | ? 'Register'
42 | : 'Watch recap'}
43 |
44 |
45 |
46 | );
47 | };
48 |
49 | export default About;
50 |
--------------------------------------------------------------------------------
/src/components/PageComp/IndividualWebinar/Register.jsx:
--------------------------------------------------------------------------------
1 | import { useEffect, useState } from 'react';
2 |
3 | const Register = ({ register }) => {
4 | const [iframeHeight, setIframeHeight] = useState(750);
5 |
6 | useEffect(() => {
7 | const windowWidth = window.innerWidth;
8 |
9 | if (windowWidth < 900) {
10 | setIframeHeight(930);
11 | } else if (windowWidth < 1250) {
12 | setIframeHeight(1000);
13 | } else {
14 | setIframeHeight(750);
15 | }
16 | }, []);
17 |
18 | return (
19 |
20 |
21 |
Register for the webinar
22 |
23 |
Register and learn by great developer and creators
24 |
32 |
33 |
34 | );
35 | };
36 |
37 | export default Register;
38 |
--------------------------------------------------------------------------------
/src/components/PageComp/IndividualWebinar/Speakers.jsx:
--------------------------------------------------------------------------------
1 | import SpeakerCard from '@/components/Cards/SpeakerCard';
2 |
3 | const Speakers = ({ speakers }) => {
4 | return (
5 |
6 |
7 |
Speakers
8 |
9 |
10 |
18 | {speakers.map((speaker) => (
19 |
20 | ))}
21 |
22 |
23 |
24 | );
25 | };
26 | export default Speakers;
27 |
--------------------------------------------------------------------------------
/src/components/PageComp/IndividualWebinar/index.js:
--------------------------------------------------------------------------------
1 | export { default as About } from './About';
2 | export { default as Register } from './Register';
3 | export { default as Speakers } from './Speakers';
4 |
--------------------------------------------------------------------------------
/src/components/PageComp/OpenSourcePage/About.jsx:
--------------------------------------------------------------------------------
1 | import ColumnSection from '@/components/layout/ColumnSection';
2 | import ListItem from '@/components/Listitem';
3 |
4 | const About = () => {
5 | return (
6 |
13 |
14 | Open source software is accessible to the public at no cost, allowing
15 | anyone to view, modify, and distribute its source code.
16 |
17 |
18 | The open source community is made up of developers and users who work
19 | together on software projects through online platforms like GitHub.
20 |
21 |
22 | Open source software is valued for its transparency, flexibility, and
23 | security, as the code can be reviewed and modified by anyone.
24 |
25 |
26 | Popular examples of open source software include Linux, Apache, Firefox,
27 | and WordPress
28 |
29 |
30 | );
31 | };
32 |
33 | export default About;
34 |
--------------------------------------------------------------------------------
/src/components/PageComp/OpenSourcePage/Header.jsx:
--------------------------------------------------------------------------------
1 | import { ArrowLink, ButtonLink } from '@/components/links';
2 |
3 | const Header = () => {
4 | return (
5 |
6 |
7 |
8 |
9 | Open source, collaboration for innovation
10 |
11 |
12 | The Power of Open Source: Unleashing the Collective Genius of Global
13 | Communities
14 |
15 |
21 | Checkout projects
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 | );
30 | };
31 | export default Header;
32 |
--------------------------------------------------------------------------------
/src/components/PageComp/OpenSourcePage/OurProjects.jsx:
--------------------------------------------------------------------------------
1 | import DetailCard from '../../Cards/DetailCard';
2 |
3 | const OurProjects = () => {
4 | return (
5 |
6 |
7 |
Our Projects
8 |
9 |
10 | {projects.map((hashnode) => (
11 |
12 | ))}
13 |
14 |
15 |
16 | );
17 | };
18 |
19 | export default OurProjects;
20 |
21 | const projects = [
22 | {
23 | title: 'WeMakeDevs website',
24 | description:
25 | 'Our goal is to inspire, educate, and empower the software developer student community to reach their full potential and make a positive impact in the tech industry. ',
26 | image: '/assets/ourprojects/wmd.png',
27 | url: 'https://wemakedevs.org/',
28 | git: 'https://github.com/WeMakeDevs/wemakedevs',
29 | btnText: 'Learn more',
30 | },
31 | {
32 | title: 'Roadmap runner',
33 | description:
34 | 'A roadmap is essential for success in software development and provides a clear plan of action to stay focused, measure progress, and make adjustments.',
35 | image: '/assets/ourprojects/roadmap.png',
36 | url: 'https://roadmaprunner.vercel.app/',
37 | btnText: 'Learn more',
38 | git: 'https://github.com/WeMakeDevs/roadmap-runner',
39 | },
40 | ];
41 |
--------------------------------------------------------------------------------
/src/components/PageComp/ScholarshipsPage/Hero.jsx:
--------------------------------------------------------------------------------
1 | import ArrowLink from '@/components/links/ArrowLink';
2 | import ButtonLink from '@/components/links/ButtonLink';
3 |
4 | const Hero = () => {
5 | return (
6 |
7 |
8 |
9 | WeMakeDevs{' '}
10 |
11 | Scholarships
12 |
13 |
14 |
15 | Empowering Education and Supporting Lifelong Learning
16 |
17 |
18 | Ongoing scholarships
19 |
20 |
21 |
22 | );
23 | };
24 | export default Hero;
25 |
--------------------------------------------------------------------------------
/src/components/PageComp/ScholarshipsPage/OngoingEvents.jsx:
--------------------------------------------------------------------------------
1 | const OngoingEvents = () => {
2 | return (
3 |
4 |
5 |
Ongoing events
6 |
7 |
8 |
There are no ongoing scholarship events right now
9 |
10 |
11 |
12 | );
13 | };
14 |
15 | export default OngoingEvents;
16 |
--------------------------------------------------------------------------------
/src/components/PageComp/ScholarshipsPage/PastEvents.jsx:
--------------------------------------------------------------------------------
1 | import PastEvent5 from 'assets/events/past-event-5.jpeg';
2 |
3 | import DetailCard from '@/components/Cards/DetailCard';
4 |
5 | const PastEvents = () => {
6 | return (
7 |
8 |
9 |
Past events
10 |
11 |
12 | {eventsData.map((event) => (
13 |
14 | ))}
15 |
16 |
17 |
18 | );
19 | };
20 |
21 | export default PastEvents;
22 |
23 | // Data Section
24 |
25 | const eventsData = [
26 | {
27 | description:
28 | 'We at WeMakeDevs believe in education that is free for all and strive to provide support in every scope possible. We are giving away travel funds to community members to help them attend KubeCon + CNC in Detroit, USA this year. ',
29 | image: PastEvent5,
30 | url: 'https://www.youtube.com/watch?v=kpnj1JDiKyw',
31 | btnText: 'Know more',
32 | },
33 | ];
34 |
--------------------------------------------------------------------------------
/src/components/PageComp/ScholarshipsPage/index.js:
--------------------------------------------------------------------------------
1 | export { default as Hero } from './Hero';
2 | export { default as OngoingEvents } from './OngoingEvents';
3 | export { default as PastEvents } from './PastEvents';
4 | export { default as Testimonials } from './Testimonials';
5 |
--------------------------------------------------------------------------------
/src/components/PageComp/SingleCoursePage/About.jsx:
--------------------------------------------------------------------------------
1 | import ArrowLink from '@/components/links/ArrowLink';
2 | import ButtonLink from '@/components/links/ButtonLink';
3 |
4 | const About = ({ content }) => {
5 | return (
6 |
7 |
8 |
9 |
10 | {content.title.highlight}
11 | {' '}
12 | {content.title.normal}
13 |
14 |
{content.subtitle}
15 |
16 |
23 |
24 |
25 | {content.buttons.map((btn) => (
26 |
32 | {btn.name}
33 |
34 | ))}
35 |
36 |
37 |
38 | );
39 | };
40 |
41 | export default About;
42 |
--------------------------------------------------------------------------------
/src/components/PageComp/SingleCoursePage/Syllabus.jsx:
--------------------------------------------------------------------------------
1 | import clsxm from '@/lib/utils';
2 |
3 | import UnstyledLink from '@/components/links/UnstyledLink';
4 |
5 | const Syllabus = ({ content }) => {
6 | return (
7 |
8 |
9 |
Syllabus
10 |
11 |
12 | {content.syllabus.map((s, i) => (
13 |
21 |
26 | {s.title}
27 |
28 |
{s.description}
29 |
30 | ))}
31 |
32 |
33 |
34 | );
35 | };
36 |
37 | export default Syllabus;
38 |
--------------------------------------------------------------------------------
/src/components/PageComp/SingleCoursePage/index.js:
--------------------------------------------------------------------------------
1 | export { default as About } from './About';
2 | export { default as Syllabus } from './Syllabus';
3 |
--------------------------------------------------------------------------------
/src/components/PageComp/WebinarPage/Past.jsx:
--------------------------------------------------------------------------------
1 | import { webinar } from '@/content/Webinars/index.content';
2 |
3 | import WebinarCard from '@/components/Cards/WebinarCard';
4 |
5 | const Upcoming = () => {
6 | return (
7 |
8 |
9 |
Past webinars
10 |
11 |
12 | {webinar.filter(
13 | (web) => new Date().getTime() >= new Date(web.time).getTime()
14 | ).length > 0 ? (
15 | webinar
16 | .filter(
17 | (web) => new Date().getTime() >= new Date(web.time).getTime()
18 | )
19 | .map((web) =>
)
20 | ) : (
21 |
There no past events are happend till now
22 | )}
23 |
24 |
25 |
26 | );
27 | };
28 | export default Upcoming;
29 |
--------------------------------------------------------------------------------
/src/components/PageComp/WebinarPage/Upcoming.jsx:
--------------------------------------------------------------------------------
1 | import { webinar } from '@/content/Webinars/index.content';
2 |
3 | import WebinarCard from '@/components/Cards/WebinarCard';
4 |
5 | const Upcoming = () => {
6 | return (
7 |
8 |
9 |
Upcoming webinars
10 |
11 |
12 |
13 | {webinar.filter(
14 | (web) => new Date().getTime() < new Date(web.time).getTime()
15 | ).length > 0 ? (
16 | webinar
17 | .filter(
18 | (web) => new Date().getTime() < new Date(web.time).getTime()
19 | )
20 | .map((web) => {
21 | return
;
22 | })
23 | ) : (
24 |
There no upcoming events right now
25 | )}
26 |
27 |
28 |
29 | );
30 | };
31 | export default Upcoming;
32 |
--------------------------------------------------------------------------------
/src/components/PageComp/WebinarPage/index.js:
--------------------------------------------------------------------------------
1 | export { default as Hero } from './Hero';
2 | export { default as Past } from './Past';
3 | export { default as Upcoming } from './Upcoming';
4 |
--------------------------------------------------------------------------------
/src/components/ScrollToTop.jsx:
--------------------------------------------------------------------------------
1 | // eslint-disable-next-line
2 | import clsxm from '@/lib/utils';
3 | import { useEffect, useState } from 'react';
4 | import { IoIosArrowDropupCircle } from 'react-icons/io';
5 | export default function ScrollToTop() {
6 | const [goToTop, setgoToTop] = useState(false);
7 | const showBtn = () => {
8 | if (window.scrollY > 200) {
9 | setgoToTop(true);
10 | } else {
11 | setgoToTop(false);
12 | }
13 | };
14 | useEffect(() => {
15 | window.addEventListener('scroll', showBtn);
16 | return () => {
17 | window.removeEventListener('scroll', showBtn);
18 | };
19 | }, []);
20 |
21 | const toTop = () => {
22 | window.scroll({
23 | top: 0,
24 | left: 0,
25 | behavior: 'smooth',
26 | });
27 | };
28 | return (
29 |
40 |
41 |
42 | );
43 | }
44 |
--------------------------------------------------------------------------------
/src/components/layout/Backdrop.jsx:
--------------------------------------------------------------------------------
1 | import clsx from 'clsx';
2 |
3 | const Backdrop = ({
4 | className,
5 | isDarkBg = false,
6 | isTransparent = false,
7 | isBlur = false,
8 | isGradient = false,
9 | children,
10 | show = false,
11 | onClose,
12 | }) => {
13 | return (
14 |
30 |
31 | {children}
32 |
33 | );
34 | };
35 |
36 | export default Backdrop;
37 |
--------------------------------------------------------------------------------
/src/components/layout/ColumnSection.jsx:
--------------------------------------------------------------------------------
1 | import clsx from 'clsx';
2 |
3 | import clsxm from '@/lib/utils';
4 |
5 | import ArrowLink from '@/components/links/ArrowLink';
6 | import ButtonLink from '@/components/links/ButtonLink';
7 |
8 | const ColumnSection = ({
9 | id,
10 | src,
11 | isVideo = false,
12 | title,
13 | as,
14 | buttonLinks,
15 | direction = 'left',
16 | children,
17 | }) => {
18 | const Component = as || 'section';
19 | return (
20 |
21 |
28 | {isVideo ? (
29 |
36 | ) : (
37 |
42 | )}
43 |
49 |
{title}
50 |
51 |
54 |
55 | {buttonLinks?.map((buttonLink) => (
56 |
62 | {buttonLink.name}
63 |
64 | ))}
65 |
66 |
67 |
68 |
69 | );
70 | };
71 |
72 | export default ColumnSection;
73 |
--------------------------------------------------------------------------------
/src/components/layout/Faq.jsx:
--------------------------------------------------------------------------------
1 | import Accordion from '@/components/Accordion';
2 |
3 | const Faq = ({ faq }) => {
4 | return (
5 |
15 | );
16 | };
17 |
18 | export default Faq;
19 |
--------------------------------------------------------------------------------
/src/components/layout/JoinUs/NewsLetter.jsx:
--------------------------------------------------------------------------------
1 | import { useEffect, useState } from 'react';
2 |
3 | const NewsLetter = () => {
4 | const [iframeHeight, setIframeHeight] = useState(670);
5 |
6 | useEffect(() => {
7 | const windowWidth = window.innerWidth;
8 |
9 | if (windowWidth < 900) {
10 | setIframeHeight(830);
11 | } else if (windowWidth < 1250) {
12 | setIframeHeight(700);
13 | } else {
14 | setIframeHeight(670);
15 | }
16 | }, []);
17 |
18 | return (
19 |
20 |
21 |
Subscribe to our newsletter
22 |
23 |
Stay updated and never miss an opportunity.
24 |
25 |
32 |
33 |
34 | );
35 | };
36 |
37 | export default NewsLetter;
38 |
--------------------------------------------------------------------------------
/src/components/layout/Loader.jsx:
--------------------------------------------------------------------------------
1 | import { AiOutlineLoading } from 'react-icons/ai';
2 |
3 | const Loader = () => {
4 | return (
5 |
8 | );
9 | };
10 |
11 | export default Loader;
12 |
--------------------------------------------------------------------------------
/src/components/layout/Partner/index.module.css:
--------------------------------------------------------------------------------
1 | .copy::after {
2 | @apply after:transform-['scale(0.95) translate(-50%,calc(50%+5px))'] bottom-0 left-1/2 after:pointer-events-none after:absolute after:origin-center after:rounded after:bg-content after:px-2 after:text-xs after:text-base-100 after:opacity-0 after:transition-all after:duration-300 after:content-['Copied'];
3 | }
4 |
--------------------------------------------------------------------------------
/src/components/layout/index.jsx:
--------------------------------------------------------------------------------
1 | import Backdrop from './Backdrop';
2 | import Banner from './Banner';
3 | import ColumnSection from './ColumnSection';
4 | import Faq from './Faq';
5 | import Footer from './Footer';
6 | import JoinUs from './JoinUs';
7 | import Loader from './Loader';
8 | import Navbar from './Navbar';
9 | import Partner from './Partner';
10 | import Testimonials from './Testimonials';
11 |
12 | export {
13 | Backdrop,
14 | Banner,
15 | ColumnSection,
16 | Faq as FAQ,
17 | Footer,
18 | JoinUs,
19 | Loader,
20 | Navbar,
21 | Partner,
22 | Testimonials,
23 | };
24 |
25 | const Layout = ({ content, children }) => {
26 | return (
27 | <>
28 |
29 | {/* */}
30 |
31 | {children}
32 |
33 |
34 | {/* */}
35 |
36 |
37 | >
38 | );
39 | };
40 |
41 | export default Layout;
42 |
--------------------------------------------------------------------------------
/src/components/links/ArrowLink.jsx:
--------------------------------------------------------------------------------
1 | import clsxm from '@/lib/utils';
2 |
3 | import UnstyledLink from './UnstyledLink';
4 |
5 | export default function ArrowLink({
6 | children,
7 | className,
8 | direction = 'right',
9 | as,
10 | href,
11 | ...rest
12 | }) {
13 | const Component = as || UnstyledLink;
14 |
15 | return (
16 |
25 | {children}
26 |
40 |
44 |
55 |
56 |
57 | );
58 | }
59 |
--------------------------------------------------------------------------------
/src/components/links/HeaderLink.jsx:
--------------------------------------------------------------------------------
1 | import clsx from 'clsx';
2 |
3 | import UnstyledLink from './UnstyledLink';
4 |
5 | function HeaderLink({ className, href, children, ...rest }) {
6 | return (
7 |
17 | {children}
18 |
19 | );
20 | }
21 |
22 | export default HeaderLink;
23 |
--------------------------------------------------------------------------------
/src/components/links/UnstyledLink.jsx:
--------------------------------------------------------------------------------
1 | import NewTab from 'Icons/core/NewTab';
2 | import * as React from 'react';
3 | import { Link } from 'react-router-dom';
4 |
5 | import clsxm from '@/lib/utils';
6 |
7 | const UnstyledLink = React.forwardRef(
8 | (
9 | { children, href, openNewTab, openNewTabIcon = false, className, ...rest },
10 | ref
11 | ) => {
12 | // If href start with `#` then it will render Link Component from `react-router-dom`
13 | const isNewTab =
14 | openNewTab !== undefined ? openNewTab : href && !href.startsWith('/');
15 |
16 | // If it is not new tab then then
17 | if (!isNewTab) {
18 | return (
19 |
20 | {children}
21 |
22 | );
23 | }
24 |
25 | return (
26 |
37 | {children} {openNewTabIcon && }{' '}
38 |
39 | );
40 | }
41 | );
42 |
43 | export default UnstyledLink;
44 |
--------------------------------------------------------------------------------
/src/components/links/index.js:
--------------------------------------------------------------------------------
1 | export { default as ArrowLink } from '@/components/links/ArrowLink';
2 | export { default as ButtonLink } from '@/components/links/ButtonLink';
3 | export { default as HeaderLink } from '@/components/links/HeaderLink';
4 | export { default as UnstyledLink } from '@/components/links/UnstyledLink';
5 |
--------------------------------------------------------------------------------
/src/content/Educational/Testimonials.js:
--------------------------------------------------------------------------------
1 | const data = [
2 | {
3 | src: '/assets/images/educationalpage/jeevan.jpg',
4 | description: `Just started my coding practice with @trywilco.thanks, @kunalstwt @commclassroom for spreading awareness about Wilco. :)`,
5 | from: 'JEVAN JOYAL',
6 | },
7 | {
8 | src: '/assets/images/educationalpage/yatish.jpg',
9 | description: `Took part in the Practice your Coding skills with Wilco event held by @commclassroom, and started contributing to an open source project,completed three quests. Thanks to @kunalstwt for the guidance to contribute to an opensource. #opensource.`,
10 | from: 'YATISH MANNE',
11 | },
12 | {
13 | src: '/assets/images/educationalpage/prakhar.jpg',
14 | description: `Finally got my first PR because of @TwilioQuest thanks @kunalstwt for suggesting it. This game is helping me more than I expected!! @commclassroom`,
15 | from: 'PRAKHAR TIWARI',
16 | },
17 | {
18 | src: '/assets/images/educationalpage/adithiya.jpg',
19 | description: `https://youtu.be/Nxja-95Z2zc A great initiative by @kunalstwt @commclassroom @TwilioQuest for folks around the world to get started with Open source. This is also my First Open Source. I know I'm going to learn a lot of new things. Super Excited for this one.`,
20 | from: 'S ADITHIYA',
21 | },
22 | {
23 | src: '/assets/images/educationalpage/ashish.jpg',
24 | description: `Starting #Go lang from today onwards as looking forward to contributing to the #OpenSourceFest organizing by @kunalstwt @commclassroom @KubeScape Resource: https://commclassroom.org/devops-roadmap?r_done=1 This gonna be a great experience as I'll be contributing for the very first time #OpenSource`,
25 | from: 'ASHISH KHANAGWAL',
26 | },
27 | {
28 | src: '/assets/images/educationalpage/shlok.jpg',
29 | description: `1st open source contribution done. @TwilioQuest A heartfelt thanks to @kunalstwt for his great work for the community @commclassroom`,
30 | from: 'SHLOK RANJAN',
31 | },
32 | ];
33 |
34 | export default data;
35 |
--------------------------------------------------------------------------------
/src/content/Hackathons/Testimonial.js:
--------------------------------------------------------------------------------
1 | const data = [
2 | {
3 | src: '/assets/images/hackathonpage/samyak.jpg',
4 | description: `We have finished the Napptive hackathon. This was my first hackathon and Afzal and I participated and made such tools like Prometheus, percona influxdb, todo-app, cortex, redis, Jenkins, ArangoDB, Timescaledb Thank you NAPPTIVE WeMakeDevs and Kunal Kushwaha #hackathon2023 `,
5 | from: 'SAMYAK SHEOKAR',
6 | },
7 | {
8 | src: '/assets/images/hackathonpage/shruti.jpg',
9 | description: ` I am thrilled to share my experience participating in the recent NAPPTIVE x WeMakeDevs #hackathon along with Shivraj Nakum. Our team NAPP-DEVS specifically focused on the "Migrate an open source application to the Open Application Model" track. A huge shoutout to NAPPTIVE x WeMakeDevs Slack #community for their constant support.
10 | `,
11 | from: 'SHRUTI MISHRA',
12 | },
13 | {
14 | src: '/assets/images/hackathonpage/rakesh.jpg',
15 | description: `We(@RamanandSirvi, @MohdZishan2539) won a prize at Cloud Native Hackathon! 🙌 For best use of @getstream_io.Thanks @kunalstwt for the hackathon and introducing amazing tools. Learned a lot. Also thanks to @getstream_io for making things simple. https://dvp.st/3mknxwL`,
16 | from: 'RAKESH POTNURU',
17 | },
18 | {
19 | src: '/assets/images/hackathonpage/syed.jpg',
20 | description: `Done with my first Cloud Native Hackathon.... I thank my teammates for all the support and help during the hackathon @AdityaN71677515 @Aman81152043 @KaruturiPaavani.I also thank @kunalstwt for the opportunity to learn and grow`,
21 | from: 'SYED ATIF',
22 | },
23 | {
24 | src: '/assets/images/hackathonpage/prathamesh.jpg',
25 | description: `And it's our second hackathon win this weekend, won the @WeMakeDevs Stream Hackathon. Excited for 1:1 with @kunalstwt🥳🚀It was great hacking with @a_kraken_head @BhawnaC18275984 @ankushKun_`,
26 | from: 'PRATHAMESH',
27 | },
28 | ];
29 |
30 | export default data;
31 |
--------------------------------------------------------------------------------
/src/content/Hackathons/index.js:
--------------------------------------------------------------------------------
1 | import PastEvent2 from 'assets/events/past-event-2.jpeg';
2 | import PastEvent8 from 'assets/events/past-event-8.jpeg';
3 | import NapptiveBanner from 'assets/hackathon/napptive/Banner.jpg';
4 |
5 | import NapptiveHackathonContent from '@/content/Hackathons/napptive';
6 | import SyncloopHackathon from '@/content/Hackathons/syncloop';
7 |
8 | export const hackathonDataList = [
9 | {
10 | title: SyncloopHackathon.title,
11 | description: SyncloopHackathon.description,
12 | image: SyncloopHackathon.image,
13 | url: `/events/hackathons/${SyncloopHackathon.slug}`,
14 | btnText: 'Learn more',
15 | content: SyncloopHackathon,
16 | hasContent: true,
17 | date: SyncloopHackathon.to,
18 | },
19 | {
20 | title: NapptiveHackathonContent.title,
21 | description: NapptiveHackathonContent.description,
22 | image: NapptiveBanner,
23 | url: `/events/hackathons/${NapptiveHackathonContent.slug}`,
24 | btnText: 'Learn more',
25 | content: NapptiveHackathonContent,
26 | hasContent: true,
27 | date: NapptiveHackathonContent.to,
28 | },
29 | {
30 | title: 'Stream hackathon',
31 | description:
32 | 'WeMakeDevs <> Stream Hackathon : Hey if you are looking to learn new skills, meet interesting people, and push yourself to create something truly innovative, then you should definitely taking part in our hackathon!',
33 | image: PastEvent2,
34 | url: 'https://wemakedevs-stream.devpost.com/resources',
35 | btnText: 'Learn more',
36 | hasContent: false,
37 | date: 'Sun, 18 Dec 2022 14:30:00 GMT',
38 | },
39 | {
40 | title: 'Cloud Native hackathon',
41 | description:
42 | 'Cloud Native Hackathon is an initiative to bring together students, professionals, and even beginners from around the world to innovate and build projects in the domain of DevOps.',
43 | image: PastEvent8,
44 | url: 'https://cloudnativehack21.devpost.com/',
45 | btnText: 'Learn more',
46 | hasContent: false,
47 | date: 'Mon, 12 Dec 2022 14:30:00 GMT',
48 | },
49 | ];
50 |
--------------------------------------------------------------------------------
/src/content/Meetup/ParticularMeetupPageContent.js:
--------------------------------------------------------------------------------
1 | export const ParticularMeetupPageContent = {
2 | header: [
3 | {
4 | name: 'About',
5 | href: '#about',
6 | },
7 | {
8 | name: 'Agenda',
9 | href: '#agenda',
10 | },
11 | {
12 | name: 'Speakers',
13 | href: '#speakers',
14 | },
15 | {
16 | name: 'Sponsors',
17 | href: '#sponsors',
18 | },
19 | {
20 | name: 'Past Events',
21 | href: '#past-meetup',
22 | },
23 | ],
24 | CTA: {
25 | name: 'Register',
26 | href: '#register',
27 | },
28 | };
29 |
--------------------------------------------------------------------------------
/src/content/Scholarship/testimonial.js:
--------------------------------------------------------------------------------
1 | const data = [
2 | {
3 | src: '/assets/images/scholarship/Tarun.jpg',
4 | desc1: `WeMakeDevs made my Kubecon experience unforgettable. I was fortunate enough to receive a scholarship from them, which allowed me to attend this incredible event. The opportunities and knowledge I gained were beyond expectations.`,
5 | desc2: `I shared my experience in detail on my blog, highlighting the valuable insights I gathered during Kubecon. I'm truly grateful to WeMakeDevs for their support and for making it possible for me to be a part of this enriching conference.`,
6 | from: 'TARUN CHAWLA',
7 | source: 'https://tarunchawla.hashnode.dev/my-kubecon-experience',
8 | },
9 | {
10 | src: '/assets/images/scholarship/Diana.jpg',
11 | desc1: `Attending Kubecon was a dream come true, thanks to WeMakeDevs. Their scholarship made it possible for me to immerse myself in the world of Kubernetes and learn from the industry's best. I shared my experience on Instagram, capturing the exciting moments and key takeaways from the event.`,
12 | desc2: `WeMakeDevs' support has been instrumental in my growth and development as a professional in the tech industry. Thank you for this incredible opportunity!`,
13 | from: 'DIANA PHAM',
14 | source: 'https://www.instagram.com/p/CkaCJChuQV5/?igshid=MzRlODBiNWFlZA==',
15 | },
16 | {
17 | src: '/assets/images/scholarship/Ashwin.jpg',
18 | desc1: `I had an amazing time at Kubecon, all thanks to WeMakeDevs and their scholarship program. Being able to attend this event was a game-changer for me. I got to network with experts, learn about the latest trends in Kubernetes, and broaden my knowledge in cloud-native technologies.`,
19 | desc2: `I expressed my gratitude on Twitter, showcasing how WeMakeDevs' support has been instrumental in my career growth. Thank you for empowering aspiring developers like me!`,
20 | from: 'ASHWIN KUMAR UPPALA',
21 | source: 'https://twitter.com/ashwinexe/status/1567172540820520963?s=20',
22 | },
23 | ];
24 |
25 | export default data;
26 |
--------------------------------------------------------------------------------
/src/content/Webinars/AutometricsWebinar.js:
--------------------------------------------------------------------------------
1 | import Poster from '@/assets/webinars/autometrics.png';
2 |
3 | import {
4 | IndividualWebinarCompletedPageHeader,
5 | IndividualWebinarPageFAQ,
6 | } from './IndividualWebinarPageContent';
7 |
8 | const AutometricsWebinar = {
9 | header: IndividualWebinarCompletedPageHeader,
10 | name: 'Application observability with Autometrics & Beyond',
11 | description:
12 | 'Explore the world of application observability with Autometrics! Join our webinar to discover how function-level metrics, including latency, request rate, and error rate, can enhance your application’s performance. Learn how Autometrics, an open-source microframework based on Prometheus and OpenTelemetry, enables quick setup of function-based metrics directly from your code. Unleash the power of metrics to improve debugging efficiency, establish Service Level Objectives (SLOs), and ensure a seamless user experience. Don’t miss out on the key insights for cost-efficiently enhancing observability in your applications.',
13 | poster: Poster,
14 | videoUrl: 'https://www.youtube.com/embed/roQX2HJODb0',
15 | takeaways: [
16 | 'Basics around application observability',
17 | 'The benefits of using open-source tooling for implementing an observability strategy',
18 | 'Deeper dive into the topic of application metrics',
19 | 'Introduction to OpenTelemetry and Prometheus',
20 | 'How to leverage the open-source microframework Autometrics',
21 | ],
22 | time: '06 December 2023 10:00:00 GMT',
23 | speakers: [
24 | {
25 | name: 'Nele Lea',
26 | description: 'Fiberplane',
27 | twitter: 'nele_lea',
28 | img: 'https://pbs.twimg.com/profile_images/1657355405037535232/uE_wTa3V_400x400.jpg',
29 | },
30 | ],
31 | slug: 'application-observability-with-autometrics',
32 | faq: IndividualWebinarPageFAQ,
33 | };
34 |
35 | export default AutometricsWebinar;
36 |
--------------------------------------------------------------------------------
/src/content/Webinars/BPFWebinar.js:
--------------------------------------------------------------------------------
1 | import Poster from '@/assets/webinars/ebf.jpg';
2 |
3 | import {
4 | IndividualWebinarCompletedPageHeader,
5 | IndividualWebinarPageFAQ,
6 | } from './IndividualWebinarPageContent';
7 |
8 | const BPFWebinar = {
9 | header: IndividualWebinarCompletedPageHeader,
10 | name: 'Cloud-native observability with eBPF',
11 | description:
12 | 'A walkthrough of groundcover, a modern approach to a Kubernetes-native APM',
13 | poster: Poster,
14 | videoUrl: 'https://www.youtube.com/embed/jdQAU4DTsGo',
15 | takeaways: [
16 | 'What is eBPF?',
17 | 'How it can be used for practical application monitoring',
18 | 'What is groundcover and how to get started?',
19 | ],
20 | time: '17 March 2023 14:00:00 GMT',
21 | speakers: [
22 | {
23 | name: 'Yechezkel Rabinovich',
24 | description: 'Co-Founder and CTO at groundcover',
25 | twitter: 'yechezkel__',
26 | img: 'https://pbs.twimg.com/profile_images/1564199427002228737/rxDmaeVF_400x400.jpg',
27 | },
28 | {
29 | name: 'Shahar Azulay',
30 | description: 'Co-Founder and CEO at groundcover',
31 | twitter: 'shahar__azulay',
32 | img: 'https://pbs.twimg.com/profile_images/1558796013548314624/tFEl5CDr_400x400.jpg',
33 | },
34 | ],
35 | register: 'BPFWebinar',
36 | slug: 'observability-with-ebpf',
37 | faq: IndividualWebinarPageFAQ,
38 | };
39 |
40 | export default BPFWebinar;
41 |
--------------------------------------------------------------------------------
/src/content/Webinars/BiteSizeOtterize.js:
--------------------------------------------------------------------------------
1 | import Poster from '@/assets/webinars/bite-size-otterize.png';
2 |
3 | import {
4 | IndividualWebinarCompletedPageHeader,
5 | IndividualWebinarPageFAQ,
6 | } from './IndividualWebinarPageContent';
7 |
8 | const BiteSizeOtterize = {
9 | header: IndividualWebinarCompletedPageHeader,
10 | name: 'Getting started with Bite-size Otterize',
11 | description:
12 | 'With the release of Bite Size Otterize let us learn how to get started securing services within your cluster one service at a time, rather than having to start a huge project to roll out network policies across your infrastructure.',
13 | poster: Poster,
14 | videoUrl: 'https://www.youtube.com/embed/M5xMHVGEt-k',
15 | takeaways: [
16 | 'What is Otterize?',
17 | 'What is IBAC?',
18 | 'How to use Otterize and IBAC?',
19 | 'How to secure services in a Kubernetes cluster with Otterize and IBAC?',
20 | ],
21 | time: '24 August 2023 14:30:00 GMT',
22 | speakers: [
23 | {
24 | name: 'David G. Simmons',
25 | description: 'Head of DevRel at Otterize',
26 | twitter: 'davidgsIoT',
27 | img: 'https://pbs.twimg.com/profile_images/1604595476468318212/-fLmZ9m9_400x400.jpg',
28 | },
29 | ],
30 | register: 'BiteSizedOtterizeWebinar',
31 | slug: 'bite-sized-otterize',
32 | faq: IndividualWebinarPageFAQ,
33 | };
34 |
35 | export default BiteSizeOtterize;
36 |
--------------------------------------------------------------------------------
/src/content/Webinars/ChatOpsWebinar.js:
--------------------------------------------------------------------------------
1 | import Poster from '@/assets/webinars/chatops-for-k8s.png';
2 |
3 | import {
4 | IndividualWebinarCompletedPageHeader,
5 | IndividualWebinarPageFAQ,
6 | } from './IndividualWebinarPageContent';
7 |
8 | const ChatOpsWebinar = {
9 | header: IndividualWebinarCompletedPageHeader,
10 | name: 'Unlock the Power of Botkube: Chatops for Kubernetes',
11 | description:
12 | "In this webinar, we will introduce you to Botkube, the ultimate collaborative troubleshooting tool designed for Kubernetes users. Botkube seamlessly integrates with popular messaging platforms like Slack, Microsoft Teams, Discord, and Mattermost, allowing you to receive alerts and take action without leaving your preferred interface. With Botkube, you'll gain instant visibility and control over your Kubernetes cluster resources, all while staying within your messaging app.It enables you to automate actions, run kubectl and Helm commands, and receive valuable recommendations for Kubernetes best practices. Say goodbye to context switching and hello to enhanced productivity. we'll showcase Botkube's key features and benefits through an engaging live demo.",
13 | poster: Poster,
14 | videoUrl: 'https://www.youtube.com/embed/Z9owjkU97ok',
15 | takeaways: [
16 | 'What is ChatOps?',
17 | 'Installing and working with Botkube',
18 | 'Explore the troubleshooting space in K8s',
19 | ],
20 | time: '27 June 2023 16:00:00 GMT',
21 | speakers: [
22 | {
23 | name: 'Maria Ashby',
24 | description: 'Developer Advocate at Botkube',
25 | twitter: 'Makincashby',
26 | img: 'https://pbs.twimg.com/profile_images/1587073588678361089/H0AN6CTl_400x400.jpg',
27 | },
28 | ],
29 | register: 'ChatOpsWebinar',
30 | slug: 'chatops-with-botkube',
31 | faq: IndividualWebinarPageFAQ,
32 | };
33 |
34 | export default ChatOpsWebinar;
35 |
--------------------------------------------------------------------------------
/src/content/Webinars/ConfigurationAsCode.js:
--------------------------------------------------------------------------------
1 | import Poster from '@/assets/webinars/configuration-as-code.jpg';
2 |
3 | import {
4 | IndividualWebinarCompletedPageHeader,
5 | IndividualWebinarPageFAQ,
6 | } from './IndividualWebinarPageContent';
7 |
8 | const ConfigurationAsCode = {
9 | header: IndividualWebinarCompletedPageHeader,
10 | name: 'Configuration-as-code',
11 | description:
12 | 'Join us for a webinar with Ran Cohen, Configu co-founder and CTO where you will discover a groundbreaking approach to efficiently manage application configurations and streamline your development process.',
13 | poster: Poster,
14 | videoUrl: 'https://www.youtube.com/embed/Z_Vz8v6e-U4?si=FTreIZcDWSbbBtuS',
15 | takeaways: ['A groundbreaking way to manage application configurations'],
16 | CTA: {
17 | name: 'Register',
18 | href: '#register',
19 | },
20 | time: '19 October 2023 16:00:00 GMT',
21 | speakers: [
22 | {
23 | name: 'Ran Cohen',
24 | description: 'Co-founder and CTO of Configu',
25 | linkedin: 'rannn505',
26 | img: 'https://media.licdn.com/dms/image/D4D03AQGlZEaCxrZu5g/profile-displayphoto-shrink_800_800/0/1675379538652?e=1701907200&v=beta&t=wGfOH8SOFalYgWByka6S740Rj1f4xUT1B6dl8ge2rzE',
27 | },
28 | ],
29 | register: 'ConfigurationAsCodeWebinar',
30 | slug: 'configuration-as-code',
31 | faq: IndividualWebinarPageFAQ,
32 | };
33 |
34 | export default ConfigurationAsCode;
35 |
--------------------------------------------------------------------------------
/src/content/Webinars/CostOptimizationWebinar.js:
--------------------------------------------------------------------------------
1 | import Poster from '@/assets/webinars/cloud-cost.png';
2 |
3 | import {
4 | IndividualWebinarCompletedPageHeader,
5 | IndividualWebinarPageFAQ,
6 | } from './IndividualWebinarPageContent';
7 |
8 | const CostOptimizationWebinar = {
9 | header: IndividualWebinarCompletedPageHeader,
10 | name: 'Kubernetes Cost Saving and Resource Optimization',
11 | description:
12 | 'Tips and tricks for setting accurate CPU and Memory requests on Kubernetes, to save costs and optimize performance',
13 | poster: Poster,
14 | videoUrl: 'https://www.youtube.com/embed/GTRBsD2kDlM',
15 | takeaways: [
16 | 'What causes Kubernetes costs to increase?',
17 | 'What are the guidelines for setting resource request limits?',
18 | 'What tools can you use to predict best resource utilization?',
19 | ],
20 | time: '3 July 2023 16:00:00 GMT',
21 | speakers: [
22 | {
23 | name: 'Natan Yellin',
24 | description: 'CEO at Robusta',
25 | twitter: 'aantn',
26 | img: 'https://pbs.twimg.com/profile_images/1647693309429661696/rFwSIv6K_400x400.jpg',
27 | },
28 | ],
29 | register: 'CostOptimizationWebinar',
30 | slug: 'kubernetes-cost-optimizations',
31 | faq: IndividualWebinarPageFAQ,
32 | };
33 |
34 | export default CostOptimizationWebinar;
35 |
--------------------------------------------------------------------------------
/src/content/Webinars/DatabaseGuardrails.js:
--------------------------------------------------------------------------------
1 | import Poster from '@/assets/webinars/DatabaseGuardrails.png';
2 |
3 | import {
4 | IndividualWebinarCompletedPageHeader,
5 | IndividualWebinarPageFAQ,
6 | } from './IndividualWebinarPageContent';
7 |
8 | const DatabaseGuardrails = {
9 | header: IndividualWebinarCompletedPageHeader,
10 | name: 'Database Guardrails - New Age For Developers and Databases',
11 | description:
12 | 'Today’s industry standard for developing and maintaining databases is less than ideal. We don’t have a good way of preventing the bad code from reaching production. Once we deploy, we lack good tooling for observability and monitoring. Furthermore, we don’t have a way of troubleshooting and resolving issues reliably and automatically. Developers often don’t know how to proceed with their databases, and also often don’t own the solutions. We need something new. We need a paradigm shift and a completely novel approach: database guardrails.',
13 | poster: Poster,
14 | videoUrl: 'https://www.youtube.com/embed/MvU1wGeA2w8',
15 | takeaways: [
16 | 'Today’s industry standard for database maintenance is unacceptable. We can’t prevent the bad code from reaching production, we lack observability, and we can’t troubleshoot automatically.',
17 | 'Developers need to own their databases. They need database guardrails - novel approach for developing and maintaining everything around the databases.',
18 | 'Database guardrails focus on preventing the bad code from reaching production, provide monitoring and observability focusing on semantics instead of raw metrics, and utilize signals from the whole SDLC loop to automatically identify and fix issues.',
19 | ],
20 | time: '22 November 2023 11:00:00 GMT',
21 | speakers: [
22 | {
23 | name: 'Adam Furmanek',
24 | description: 'Software Development Engineer',
25 | twitter: 'furmanekadam',
26 | img: 'https://pbs.twimg.com/profile_images/1343686092642508806/feeMNpbc_400x400.jpg',
27 | },
28 | ],
29 | slug: 'database-guardrails',
30 | faq: IndividualWebinarPageFAQ,
31 | };
32 |
33 | export default DatabaseGuardrails;
34 |
--------------------------------------------------------------------------------
/src/content/Webinars/DeployWithFeatureFlags.js:
--------------------------------------------------------------------------------
1 | import Poster from '@/assets/webinars/Deploy-With-Feature-Flags.png';
2 |
3 | import {
4 | IndividualWebinarCompletedPageHeader,
5 | IndividualWebinarPageFAQ,
6 | } from './IndividualWebinarPageContent';
7 |
8 | const DeployWithFeatureFlags = {
9 | header: IndividualWebinarCompletedPageHeader,
10 | name: 'Decouple Deploy & Release: Deploying to Production Safely With Feature Flags',
11 | description:
12 | 'Feature flags let you release with confidence. Join to learn all about feature flags and how they can apply to you, with a live demo of feature flagging in action.',
13 | poster: Poster,
14 | videoUrl: 'https://www.youtube.com/embed/yIcFvVaFpjM',
15 | takeaways: [
16 | 'How to get started and scale with feature flags?',
17 | 'Use cases of feature flags for global development teams',
18 | 'Best practices for using feature flags ',
19 | 'Learn about decoupling deploy and release, canary/phased rollouts, and releasing with confidence. ',
20 | ],
21 | time: '06 October 2023 10:00:00 GMT',
22 | speakers: [
23 | {
24 | name: 'Ben Rometsch',
25 | description: 'CEO and Co-Founder of Flagsmith',
26 | twitter: 'benjarom3',
27 | linkedin: 'benrometsch',
28 | img: 'https://media.licdn.com/dms/image/C4E03AQGToFZFFw0qtw/profile-displayphoto-shrink_800_800/0/1516193876653?e=1701907200&v=beta&t=4bexn7c57rhiqXwaT35gTCuYapvKlb1h6dw6MgS_NVc',
29 | },
30 | ],
31 | register: 'DeployWithFeatureFlagsWebinar',
32 | slug: 'deploy-with-feature-flags',
33 | faq: IndividualWebinarPageFAQ,
34 | };
35 |
36 | export default DeployWithFeatureFlags;
37 |
--------------------------------------------------------------------------------
/src/content/Webinars/DevProductivityAIEra.js:
--------------------------------------------------------------------------------
1 | import Poster from '@/assets/webinars/Maximising-Developer-Productivity-AI-Era.png';
2 |
3 | const DevProductivityAIEra = {
4 | name: 'Maximising Developer Productivity in the AI Era',
5 | description:
6 | 'This webinar will explore strategies and best practices for developers to enhance their productivity in the rapidly evolving landscape of AI technology. It will cover how to effectively integrate AI tools into the development workflow, manage time and resources, and stay updated with the latest trends in AI.',
7 | poster: Poster,
8 | time: '19 December 2023 15:30:00 GMT',
9 | slug: 'https://www.youtube.com/watch?v=lferMocTGso',
10 | };
11 |
12 | export default DevProductivityAIEra;
13 |
--------------------------------------------------------------------------------
/src/content/Webinars/GopherWebinar.js:
--------------------------------------------------------------------------------
1 | import Poster from '@/assets/webinars/Gopher.png';
2 |
3 | import {
4 | IndividualWebinarCompletedPageHeader,
5 | IndividualWebinarPageFAQ,
6 | } from './IndividualWebinarPageContent';
7 |
8 | const GopherWebinar = {
9 | header: IndividualWebinarCompletedPageHeader,
10 | name: "Let's Talk About the Gopher in the Room",
11 | description:
12 | 'In this talk, the speakers will explain why Golang is their go-to programming language, why individuals should consider adopting it as well (with its ease of learning being the first reason), and how one can harness its power to enhance their skills as a developer.',
13 | poster: Poster,
14 | videoUrl: 'https://www.youtube.com/embed/6NkICt1U1-o',
15 | links: [
16 | {
17 | title: 'To try Komodor for ',
18 | link: {
19 | title: 'free',
20 | href: 'https://hubs.li/Q01Q_Df90',
21 | },
22 | },
23 | {
24 | title: 'Join the Komodor',
25 | link: {
26 | title: 'Slack Kommunity',
27 | href: 'https://launchpass.com/komodorkommunity',
28 | },
29 | },
30 | ],
31 | takeaways: [
32 | 'The many benefits of Go',
33 | 'Using Go in real-life applications',
34 | 'Best practices and pro tips',
35 | 'The Go ecosystem and community',
36 | ],
37 | time: '30 May 2023 16:00:00 GMT',
38 | speakers: [
39 | {
40 | name: 'Nir Shtein',
41 | description: 'Software Engineer at Komodor',
42 | twitter: 'NirShtein',
43 | img: 'https://pbs.twimg.com/profile_images/1549775492013871105/5crKxeZ4_400x400.jpg',
44 | },
45 | ],
46 | register: 'GopherWebinar',
47 | slug: 'benefits-of-golang',
48 | faq: IndividualWebinarPageFAQ,
49 | };
50 |
51 | export default GopherWebinar;
52 |
--------------------------------------------------------------------------------
/src/content/Webinars/HeadlessBrowser.js:
--------------------------------------------------------------------------------
1 | import Poster from '@/assets/webinars/headless-browser.jpg';
2 |
3 | import {
4 | IndividualWebinarCompletedPageHeader,
5 | IndividualWebinarPageFAQ,
6 | } from './IndividualWebinarPageContent';
7 |
8 | const HeadlessBrowser = {
9 | header: IndividualWebinarCompletedPageHeader,
10 | name: 'Headless Browsers',
11 | description:
12 | 'One of the biggest skills that engineers can easily add is a deeper understanding of headless browsers. Whether you are just getting started with web scraping or have experience building products that rely on browser automation, this webinar will up-level you with skills and tools to take it to the next level.',
13 | poster: Poster,
14 | videoUrl: 'https://www.youtube.com/embed/ELFH-w9P7bU',
15 | takeaways: [
16 | 'Advanced approaches for web scraping & extraction',
17 | 'Synthetic testing on a deeper level',
18 | 'Advanced approaches for automation',
19 | 'Asset Generation (PDF, Screenshot, etc.)',
20 | ],
21 | time: '04 October 2023 16:00:00 GMT',
22 | speakers: [
23 | {
24 | name: 'Joel Griffith',
25 | description: 'Founder and CEO of Browserless',
26 | twitter: 'browserless',
27 | img: 'https://media.licdn.com/dms/image/C5603AQGOEKgUHHaG3Q/profile-displayphoto-shrink_800_800/0/1615505042488?e=1701907200&v=beta&t=uMMkEtSqXxe8KvAOXpPP9eFPDhOEVe-r1OdygVeAwaA',
28 | },
29 | ],
30 | register: 'HeadlessBrowserWebinar',
31 | slug: 'headless-browser',
32 | faq: IndividualWebinarPageFAQ,
33 | };
34 |
35 | export default HeadlessBrowser;
36 |
--------------------------------------------------------------------------------
/src/content/Webinars/IndividualWebinarPageContent.js:
--------------------------------------------------------------------------------
1 | export const IndividualWebinarPageHeader = [
2 | {
3 | name: 'About',
4 | href: '#about',
5 | },
6 | {
7 | name: 'Take aways',
8 | href: '#takeaways',
9 | },
10 | {
11 | name: 'Time & Date',
12 | href: '#time',
13 | },
14 | {
15 | name: 'Speakers',
16 | href: '#speakers',
17 | },
18 | {
19 | name: 'Register',
20 | href: '#register',
21 | },
22 | ];
23 | export const IndividualWebinarCompletedPageHeader = [
24 | {
25 | name: 'About',
26 | href: '#about',
27 | },
28 | {
29 | name: 'Take aways',
30 | href: '#takeaways',
31 | },
32 | {
33 | name: 'Time & Date',
34 | href: '#time',
35 | },
36 | {
37 | name: 'Speakers',
38 | href: '#speakers',
39 | },
40 | ];
41 | export const IndividualWebinarPageFAQ = [
42 | {
43 | id: 'FAQ1',
44 | question: 'What will the webinars be about?',
45 | answer:
46 | 'The webinars will cover a wide range of topics, from trending technology, to less popular technologies as well. All will have some great real world use cases.',
47 | },
48 | {
49 | id: 'FAQ2',
50 | question: 'How can I stay notified for the upcoming webinars?',
51 | answer:
52 | 'We announce about the webinars on our socials, and discord. We will also be updating this webpage with upcoming webinars.',
53 | },
54 | {
55 | id: 'FAQ3',
56 | question: 'Will these webinars be recorded?',
57 | answer:
58 | "Yes. The webinars will be recorded, and the links to them will be included in the 'Past webinars' section.",
59 | },
60 | {
61 | id: 'FAQ4',
62 | question: 'Will the webinars be interactive?',
63 | answer:
64 | 'Yes, the webinars will be live and interactive. We encourage you to join, ask questions and get them cleared',
65 | },
66 | {
67 | id: 'FAQ5',
68 | question: 'Who will be a part of these webinars?',
69 | answer:
70 | 'We will be having webinars with industry experts on various technologies. Regardless the topic of discussion, you will learn something new and informative.',
71 | },
72 | {
73 | id: 'FAQ6',
74 | question: 'Are these webinars free to attend?',
75 | answer:
76 | 'Yes. The webinars are, and always will be free for anyone to attend. You do not need to pay anything for attending',
77 | },
78 | ];
79 |
--------------------------------------------------------------------------------
/src/content/Webinars/KafkaWebinar.js:
--------------------------------------------------------------------------------
1 | import Poster from '@/assets/webinars/kafka/poster.png';
2 | import Speaker from '@/assets/webinars/kafka/speaker.jpeg';
3 | import Speaker1 from '@/assets/webinars/kafka/speaker1.jpg';
4 |
5 | import {
6 | IndividualWebinarCompletedPageHeader,
7 | IndividualWebinarPageFAQ,
8 | } from './IndividualWebinarPageContent';
9 |
10 | const KafkaWebinar = {
11 | header: IndividualWebinarCompletedPageHeader,
12 | name: 'Deploying Kafka Brokers in Multiple Clouds with KubeSlice',
13 | description:
14 | 'Apache Kafka has emerged as the central nervous system for businesses enabling real-time event streaming. This webinar will explore how KubeSlice simplifies the deployment of Kafka across multi-cloud environments, unlocking new use cases and driving business value.',
15 | poster: Poster,
16 | videoUrl: 'https://www.youtube.com/embed/ZHTIux_cGzg',
17 | takeaways: [
18 | 'Understanding the Kafka Revolution',
19 | 'The shift to a centralized event streaming paradigm.',
20 | 'Real-world examples of Kafka deployment in retail, insurance, banking, and more.',
21 | 'Seamless Kafka Deployment across Multi-Cluster Environments with KubeSlice Deploying Kafka brokers across various Kubernetes clusters.',
22 | 'Application in single clouds, multi-cloud, and hybrid environments. Optimizing Kafka Communication',
23 | 'Strategies for resilience, scalability, and high availability. Real-time analytics and actionable insights.',
24 | 'Unified Control, Security, and Compliance with KubeSlice Unified management of resources and access privileges.',
25 | 'Use Cases and Real-World Applications with Multi-Cluster Kafka',
26 | ],
27 | time: '21 August 2023 16:00:00 GMT',
28 | speakers: [
29 | {
30 | name: 'Prasad Dorbala',
31 | description: 'Chief Product Officer at Avesha',
32 | linkedin: 'prasad-dorbala',
33 | img: Speaker,
34 | },
35 | {
36 | name: 'Olyvia Rakshit',
37 | description: 'VP of Marketing at Avesha',
38 | linkedin: 'olyviar',
39 | img: Speaker1,
40 | },
41 | ],
42 | register: 'KafkaWebinar',
43 | slug: 'multiple-clouds-with-kubeslice',
44 | faq: IndividualWebinarPageFAQ,
45 | };
46 |
47 | export default KafkaWebinar;
48 |
--------------------------------------------------------------------------------
/src/content/Webinars/LivecycleWebinar.js:
--------------------------------------------------------------------------------
1 | import Poster from '@/assets/webinars/livecycle-docker-compose.png';
2 |
3 | import {
4 | IndividualWebinarCompletedPageHeader,
5 | IndividualWebinarPageFAQ,
6 | } from './IndividualWebinarPageContent';
7 |
8 | const LivecycleWebinar = {
9 | header: IndividualWebinarCompletedPageHeader,
10 | name: 'Collaboration and Team Feedback with Docker Compose',
11 | description:
12 | 'A walkthrough of how to use Docker Compose to collaborate with your team and get feedback from your stakeholders',
13 | poster: Poster,
14 | videoUrl: 'https://www.youtube.com/embed/1l_cmL57mds',
15 | takeaways: [
16 | 'What is Docker Compose and why is it important for developers?',
17 | 'What are the challenges of using Docker Compose in a team environment?',
18 | 'How can we use Preevy on top of Compose app to unlock collaboration and the feedback cycle?',
19 | 'How to perform Open Source Maintenance using Preevy with Actions to automate Preevy URL generation?',
20 | 'Show the private beta/preview version of the Docker extension we are building to extend local environments to include others who want to give feedback',
21 | 'How the global mission at Livevcycle will provide developers multiple ways to get feedback at any point of the SDLC - SaaS, SDK, Preevy, and Extension?',
22 | ],
23 | time: '14 September 2023 11:30:00 GMT',
24 | speakers: [
25 | {
26 | name: 'Pradumna Saraf',
27 | description: 'DevRel @get_livecycle',
28 | twitter: 'pradumna_saraf',
29 | img: 'https://pbs.twimg.com/profile_images/1591119953511317504/6B1Qvb11_400x400.jpg',
30 | },
31 | ],
32 | register: 'LivecycleWebinar',
33 | slug: 'team-feedback-with-docker-compose',
34 | faq: IndividualWebinarPageFAQ,
35 | };
36 |
37 | export default LivecycleWebinar;
38 |
--------------------------------------------------------------------------------
/src/content/Webinars/ManageK8Applications.js:
--------------------------------------------------------------------------------
1 | import Poster from '@/assets/webinars/ManageK8Applications.jpg';
2 |
3 | import {
4 | IndividualWebinarCompletedPageHeader,
5 | IndividualWebinarPageFAQ,
6 | } from './IndividualWebinarPageContent';
7 |
8 | const ManageK8Applications = {
9 | header: IndividualWebinarCompletedPageHeader,
10 | name: 'How to Manage and Control Kubernetes Applications Without Kubernetes Expertise',
11 | description:
12 | 'Unlock the power of Kubernetes without the complexity! Join our hands-on webinar to discover how Lens AppIQ empowers developers to effortlessly manage and control their applications at any stage of the Kubernetes journey. Say goodbye to the steep learning curve and reclaim your time for focused application development. Dive into a seamless, app-centric approach with Lens AppIQ - the key to simplifying Kubernetes management for developers.',
13 | poster: Poster,
14 | videoUrl: 'https://www.youtube.com/embed/3ILs0gRtlsU',
15 | takeaways: [
16 | 'Import existing applications to Lens AppIQ',
17 | 'Deploy new apps with just a Docker image',
18 | 'Access logs and events for their apps',
19 | ' Visualize the topology of an application in Kubernetes',
20 | 'Set up alerts to monitor your app’s integrity',
21 | 'Integrate with Lens Desktop',
22 | ],
23 | time: '28 November 2023 12:30:00 GMT',
24 | speakers: [
25 | {
26 | name: 'Daniel Echegaray M.',
27 | description: 'Principal Engineer @Mirantis',
28 | linkedin: 'danielechegaraym',
29 | img: 'https://media.licdn.com/dms/image/C4E03AQGhtfNZAMZKaw/profile-displayphoto-shrink_800_800/0/1635704257100?e=1706745600&v=beta&t=i54L3NXmmVvqlxw5sbc91IkK2FBXmgUyD6K_F73v2eg',
30 | },
31 | ],
32 | slug: 'manage-k8-applications',
33 | faq: IndividualWebinarPageFAQ,
34 | };
35 |
36 | export default ManageK8Applications;
37 |
--------------------------------------------------------------------------------
/src/content/Webinars/NoCodeApproachWebianr.js:
--------------------------------------------------------------------------------
1 | import Poster from '@/assets/webinars/no-code.jpg';
2 |
3 | import {
4 | IndividualWebinarCompletedPageHeader,
5 | IndividualWebinarPageFAQ,
6 | } from './IndividualWebinarPageContent';
7 |
8 | const NoCodeApproachWebianr = {
9 | header: IndividualWebinarCompletedPageHeader,
10 | name: 'The no-code approach to internal developer portals',
11 | description:
12 | "Internal developer portals are the core tool in the platform engineering world. We'll talk about data models for internal developer portals, the software catalog, self-service actions and how developer portals use scorecards. We'll then cover advanced use cases, such as using the portal for CI/CD and more.",
13 | poster: Poster,
14 | videoUrl: 'https://www.youtube.com/embed/qqxlN0TJtBc',
15 | takeaways: [
16 | 'Core elements of the internal developer portals.',
17 | 'How to set them?',
18 | 'How they fit within platform engineering?',
19 | ],
20 | time: '19 March 2023 14:00:00 GMT',
21 | speakers: [
22 | {
23 | name: 'Zohar Einy',
24 | description: 'CEO at getport.io',
25 | twitter: 'ZoharEiny',
26 | img: 'https://pbs.twimg.com/profile_images/1583140212569505795/4fPTB6oV_400x400.jpg',
27 | },
28 | ],
29 | register: 'NoCodeApproachWebianr',
30 | slug: 'internal-dev-portals',
31 | faq: IndividualWebinarPageFAQ,
32 | };
33 |
34 | export default NoCodeApproachWebianr;
35 |
--------------------------------------------------------------------------------
/src/content/Webinars/ObservabilityDevOps.js:
--------------------------------------------------------------------------------
1 | import Poster from '@/assets/webinars/Observability-devops.jpg';
2 |
3 | import {
4 | IndividualWebinarCompletedPageHeader,
5 | IndividualWebinarPageFAQ,
6 | } from './IndividualWebinarPageContent';
7 |
8 | const ObservabilityDevOps = {
9 | header: IndividualWebinarCompletedPageHeader,
10 | name: 'Full-stack observability for DevOps',
11 | description:
12 | 'Intro about full stack observability and how it can be achieved using Site24x7',
13 | poster: Poster,
14 | videoUrl: 'https://www.youtube.com/embed/UTbCK92QTHw',
15 | takeaways: [
16 | 'What is full-stack observability and why is it essential for DevOps?',
17 | 'How to optimize application performance?',
18 | 'How can Site24x7 be used for gaining full-stack observability?',
19 | ],
20 | // CTA: {
21 | // name: 'Register',
22 | // href: '#register',
23 | // },
24 | time: '29 September 2023 6:00:00 GMT',
25 | speakers: [
26 | {
27 | name: 'Jasper Paul',
28 | description: 'Senior Product Manager, Site24x7',
29 | linkedin: 'jasper-paul-jp',
30 | img: 'https://media.licdn.com/dms/image/C5103AQEOdcXrMcKvkw/profile-displayphoto-shrink_800_800/0/1527268003704?e=1700697600&v=beta&t=7FdSnsyXrcr0RMcObatytXX4MyKVLVtlpWQfv06DAEA',
31 | },
32 | ],
33 | register: 'ObservabilityDevOpsWebinar',
34 | slug: 'full-stack-observability-for-devops',
35 | faq: IndividualWebinarPageFAQ,
36 | };
37 |
38 | export default ObservabilityDevOps;
39 |
--------------------------------------------------------------------------------
/src/content/Webinars/PulumiWebinar.js:
--------------------------------------------------------------------------------
1 | import Poster from '@/assets/webinars/pulumi-webinar.jpg';
2 |
3 | import {
4 | IndividualWebinarCompletedPageHeader,
5 | IndividualWebinarPageFAQ,
6 | } from './IndividualWebinarPageContent';
7 |
8 | const PulumiWebinar = {
9 | header: IndividualWebinarCompletedPageHeader,
10 | name: 'Learn and Build Infrastructure as Code with Pulumi AI',
11 | description:
12 | 'The skills gap is real. Understanding Infrastructure as Code (IaC) is necessary to unlock multiple cloud-native careers, from cloud engineering, platform engineering, and DevOps to AI/ML-related. Learn how Pulumi AI empowers you to discover, learn, and build cloud infrastructure so you can add infrastructure as code to your skill set.',
13 | poster: Poster,
14 | videoUrl: 'https://youtube.com/embed/5K8tXgeZV0U',
15 | takeaways: [
16 | 'Learn how to use Pulumi AI to set up and manage cloud infrastructure',
17 | 'Gain insights into how Pulumi AI simplifies working with various cloud services and managing complex settings',
18 | 'Learn how to integrate Pulumi AI into your development workflows',
19 | ],
20 | time: '21 December 2023 11:00:00 GMT',
21 | speakers: [
22 | {
23 | name: 'Engin Diri',
24 | description: 'Customer Success Architect @Pulumi',
25 | twitter: '_ediri',
26 | img: 'https://pbs.twimg.com/profile_images/1681427562998685697/-mpZuJgO_400x400.jpg',
27 | },
28 | ],
29 | register: 'PulumiWebinar',
30 | slug: 'learn-and-build-infrastructure-as-code-with-pulumi-ai',
31 | faq: IndividualWebinarPageFAQ,
32 | };
33 |
34 | export default PulumiWebinar;
35 |
--------------------------------------------------------------------------------
/src/content/Webinars/SimplifiedDeployment.js:
--------------------------------------------------------------------------------
1 | import Poster from '@/assets/webinars/simplify-deployments.png';
2 |
3 | import {
4 | IndividualWebinarCompletedPageHeader,
5 | IndividualWebinarPageFAQ,
6 | } from './IndividualWebinarPageContent';
7 |
8 | const SimplifiedDeploymentWebinar = {
9 | header: IndividualWebinarCompletedPageHeader,
10 | name: 'Simplified Cloud-native Application Deployment with Napptive Playground and KubeVela',
11 | description:
12 | 'This webinar explores how the Napptive Playground leverages Kubernetes and KubeVela to simplify the process of deploying cloud-native applications. It introduces the Open Application Model and the role of KubeVela in creating easy-to-use applications for Kubernetes. Then, it demonstrates the unique features of Napptive Playground, allowing developers to launch applications quickly even without in-depth knowledge of Kubernetes.',
13 | poster: Poster,
14 | videoUrl: 'https://www.youtube.com/embed/-f09JJv8qdE',
15 | takeaways: [
16 | 'Introduction to the Open Application Model',
17 | 'How does the OAM model make deployments easier?',
18 | 'Learn how to use the Napptive Playground and Kubevela to simplify cloud-native deployments',
19 | ],
20 | time: '21 June 2023 16:00:00 GMT',
21 | speakers: [
22 | {
23 | name: 'Daniel Higuero',
24 | description: 'CTO at Napptive',
25 | twitter: 'dhiguero',
26 | img: 'https://pbs.twimg.com/profile_images/647048995899068416/WtMnCepy_400x400.jpg',
27 | },
28 | ],
29 | register: 'SimplifiedDeploymentWebinar',
30 | slug: 'simplify-cloud-native-deployments',
31 | faq: IndividualWebinarPageFAQ,
32 | };
33 |
34 | export default SimplifiedDeploymentWebinar;
35 |
--------------------------------------------------------------------------------
/src/content/Webinars/StateOfJava.js:
--------------------------------------------------------------------------------
1 | import Poster from '@/assets/webinars/state-of-java.jpg';
2 |
3 | import {
4 | IndividualWebinarCompletedPageHeader,
5 | IndividualWebinarPageFAQ,
6 | } from './IndividualWebinarPageContent';
7 |
8 | const StateOfJava = {
9 | header: IndividualWebinarCompletedPageHeader,
10 | name: 'Is It Worth Learning Java in 2024?',
11 | description:
12 | 'Join us for an insightful webinar as we explore the relevance of Java in 2024. In this session, we will address the pressing question of whether learning Java remains a valuable investment in your career. Discover how Java continues to play a pivotal role in various industries, gain insights into future job opportunities, and explore the exciting possibilities this versatile programming language offers.',
13 | poster: Poster,
14 | videoUrl: 'https://youtube.com/embed/ITEAqgVZAQE',
15 | takeaways: [
16 | 'Gain insights into the current state of Java and its future prospects',
17 | 'Learn about the latest developments in the Java ecosystem',
18 | 'Discover how Java continues to play a pivotal role in various industries',
19 | 'Explore the exciting possibilities this versatile programming language offers',
20 | ],
21 | time: '22 December 2023 10:00:00 GMT',
22 | speakers: [
23 | {
24 | name: 'Sébastien Blanc',
25 | description: 'Staff Developer Advocate @aiven_io',
26 | twitter: 'sebi2706',
27 | img: 'https://pbs.twimg.com/profile_images/1588539610489126913/68Synunh_400x400.jpg',
28 | },
29 | ],
30 | register: 'StateOfJava',
31 | slug: 'state-of-java-in-2024',
32 | faq: IndividualWebinarPageFAQ,
33 | };
34 |
35 | export default StateOfJava;
36 |
--------------------------------------------------------------------------------
/src/content/Webinars/SurrealDBWebinar.js:
--------------------------------------------------------------------------------
1 | import Poster from '@/assets/webinars/surrealdb-webinar.png';
2 |
3 | import {
4 | IndividualWebinarCompletedPageHeader,
5 | IndividualWebinarPageFAQ,
6 | } from './IndividualWebinarPageContent';
7 |
8 | const SurrealDBWebinar = {
9 | header: IndividualWebinarCompletedPageHeader,
10 | name: 'A Crash Course on SurrealDB',
11 | description:
12 | 'Dive into the surreal world of SurrealDB in this interesting crash course! SurrealDB is a rust-based source available database system that pushes the boundaries of what is possible in data management. Whether you are an experienced data professional or a curious newcomer, this session will introduce you to the captivating world of SurrealDB and its remarkable features.',
13 | poster: Poster,
14 | videoUrl: 'https://www.youtube.com/embed/rMJGKtl3y8E?si=hMe63PiG_GgOyFGA',
15 | takeaways: [
16 | 'Introduction to SurrealDB',
17 | 'Features of SurrealDB',
18 | 'SurrealQL Basics: Record IDs, Record links, Auth, Graph links, etc.',
19 | 'Demo of Notes App showing top features of SurrealDB',
20 | ],
21 | time: '12 October 2023 13:00:00 GMT',
22 | speakers: [
23 | {
24 | name: 'Aravind Putrevu',
25 | description: 'Advisor @surrealDB',
26 | twitter: 'aravindputrevu',
27 | img: 'https://pbs.twimg.com/profile_images/881476892309585920/i9GC4hb5_400x400.jpg',
28 | },
29 | {
30 | name: 'Pratim Bhosale',
31 | description: 'Developer Advocate @surrealDB',
32 | twitter: 'BhosalePratim',
33 | img: 'https://pbs.twimg.com/profile_images/1703805784331837440/0HIceZIa_400x400.jpg',
34 | },
35 | ],
36 | register: 'SurrealDBWebinar',
37 | slug: 'surrealdb-crash-course',
38 | faq: IndividualWebinarPageFAQ,
39 | };
40 |
41 | export default SurrealDBWebinar;
42 |
--------------------------------------------------------------------------------
/src/content/Webinars/ZeroDowntimeKubeslice.js:
--------------------------------------------------------------------------------
1 | import Poster from '@/assets/webinars/zero-downtime.jpeg';
2 |
3 | import {
4 | IndividualWebinarCompletedPageHeader,
5 | IndividualWebinarPageFAQ,
6 | } from './IndividualWebinarPageContent';
7 |
8 | const ZeroDowmtime = {
9 | header: IndividualWebinarCompletedPageHeader,
10 | name: 'Zero RTO for Kubernetes Disaster Recovery with KubeSlice',
11 | description:
12 | 'When you have an unexpected Kubernetes downtime, you want to keep your Recovery Time Objective (RTO) as low as possible, in order to prevent any major data loss. In this webinar, the speakers will share how you can achieve Zero RTO during the Kubernetes disaster recovery process using Kubeslice, and keep the damage to a minimum.',
13 | poster: Poster,
14 | videoUrl: 'https://www.youtube.com/embed/O7qSHSQWayg',
15 | takeaways: [
16 | 'What are some reasons for Kubernetes downtime?',
17 | 'What is a RTO and why should it matter?',
18 | 'Ways to reduce RTO to zero during the Kubernetes Disaster recovery process',
19 | ],
20 | time: '23 June 2023 15:00:00 GMT',
21 | speakers: [
22 | {
23 | name: 'Prasad Dorbala',
24 | description: 'Chief Product Office at Avesha',
25 | twitter: 'PrasadDorbala',
26 | img: 'https://pbs.twimg.com/profile_images/1484711704248426500/Of4r_OuK_400x400.jpg',
27 | },
28 | {
29 | name: 'Matt LeBlanc',
30 | description: 'Senior System Engineer at Avesha',
31 | //twitter: 'MattLeBlanc', - Cannot find a twitter profile hence commented
32 | linkedin: 'matt-leblanc-boston',
33 | img: 'https://media.licdn.com/dms/image/D4E03AQFaZXFCibKZZA/profile-displayphoto-shrink_800_800/0/1667221648987?e=1692230400&v=beta&t=MTCnmLVZBC4NjtbcZM_0IHGJOqlPNmvDVNrIbtWEPPE',
34 | },
35 | ],
36 | register: 'Zerodowntime',
37 | slug: 'kuberentes-disaster-recovery',
38 | faq: IndividualWebinarPageFAQ,
39 | };
40 |
41 | export default ZeroDowmtime;
42 |
--------------------------------------------------------------------------------
/src/content/coc.js:
--------------------------------------------------------------------------------
1 | import { HomePageFAQ } from '@/pages/content';
2 |
3 | const CocContent = {
4 | header: [
5 | {
6 | name: 'FAQ',
7 | href: '#faq',
8 | },
9 | {
10 | name: 'Newsletter',
11 | href: '#join',
12 | },
13 | {
14 | name: 'Join',
15 | href: '#join',
16 | },
17 | ],
18 | faq: HomePageFAQ,
19 | coc: [
20 | {
21 | heading: 'Respect each other',
22 | content:
23 | 'Treat everyone with respect and kindness. Harassment, discrimination, or hateful behaviour towards any individual or group will not be tolerated.',
24 | },
25 | {
26 | heading: 'Be inclusive',
27 | content:
28 | 'We welcome people from all backgrounds and perspectives. Please be mindful of your language and actions to ensure everyone feels comfortable and included.',
29 | },
30 | {
31 | heading: 'Report any concerns',
32 | content:
33 | 'If you witness or experience any behaviour that violates this code of conduct, please report it to the event organizers or staff immediately. We take all reports seriously and will investigate and take appropriate action.',
34 | },
35 | {
36 | heading: 'Follow the law',
37 | content:
38 | 'All participants are expected to comply with local laws and regulations. Illegal activities are strictly prohibited and will result in immediate removal from the event.',
39 | },
40 | {
41 | heading: 'Respect the event space',
42 | content:
43 | 'Please take care of the event space and any equipment provided. Any intentional damage or theft will be reported to the authorities.',
44 | },
45 | {
46 | heading: 'Follow COVID-19 protocols',
47 | content:
48 | 'As per local guidelines, all participants are expected to follow the recommended COVID-19 protocols. Please wear a mask, maintain social distancing, and practice good hygiene.',
49 | },
50 | ],
51 | };
52 | export default CocContent;
53 |
--------------------------------------------------------------------------------
/src/content/courses/index.js:
--------------------------------------------------------------------------------
1 | export { default as DevopsPageContent } from './devops';
2 | export { default as DsaPageContent } from './dsa';
3 | export { default as GitGithubPageContent } from './gitGithub';
4 |
--------------------------------------------------------------------------------
/src/content/opensource/index.js:
--------------------------------------------------------------------------------
1 | const OpensourcePageFAQ = [
2 | {
3 | id: 'FAQ1',
4 | question: 'How do I join?',
5 | answer:
6 | 'Submit the registration form, and you will receive an email with venue details if you are selected.',
7 | },
8 | {
9 | id: 'FAQ2',
10 | question: 'Why should I attend this meetup?',
11 | answer:
12 | 'You will learn new skills, network with professionals in the field, stay connected to the community, socialize with like-minded people, and gain inspiration from new technologies and ideas.',
13 | },
14 | {
15 | id: 'FAQ3',
16 | question:
17 | 'If I am not from Delhi, will I get any student scholarship if I get selected ?',
18 | answer:
19 | 'Sorry for this time, you have to cover your travel expense on your own.',
20 | },
21 | {
22 | id: 'FAQ4',
23 | question: 'When and where will the WeMakeDevs Delhi meetup take place? ',
24 | answer: 'The event will take place on May 7, 2023, in Delhi NCR.',
25 | },
26 | {
27 | id: 'FAQ5',
28 | question: 'Is it for both students and professionals?',
29 | answer:
30 | 'Both professionals and students are welcome at this meetup because the talks range in difficulty from beginner to advanced. So, you can complete the registration form regardless of whether you are a student or professional.',
31 | },
32 | {
33 | id: 'FAQ6',
34 | question: 'Is it a paid event?',
35 | answer: 'This is a completely free-to-join and invite-only event .',
36 | },
37 | ];
38 |
39 | export const OpensourcePageContent = {
40 | header: [
41 | {
42 | name: 'About',
43 | href: '#about',
44 | },
45 | {
46 | name: 'Why',
47 | href: '#whyopensource',
48 | },
49 | {
50 | name: 'Get Started',
51 | href: '#getstarted',
52 | },
53 | {
54 | name: 'Projects',
55 | href: '#projects',
56 | },
57 | {
58 | name: 'Testimonials',
59 | href: '#testimonials',
60 | },
61 | {
62 | name: 'FAQ',
63 | href: '#faq',
64 | },
65 | ],
66 | faq: OpensourcePageFAQ,
67 | };
68 |
69 | export const opensourcetweet = [
70 | '1537416341245681665',
71 | '1656911832811184129',
72 | '1656561217442562051',
73 | '1656959959450394624',
74 | '1656141618129547264',
75 | '1658437060833968129',
76 | '1655812888387530753',
77 | '1654231459723644929',
78 | '1674400245403328513',
79 | ];
80 |
--------------------------------------------------------------------------------
/src/content/prizetweetid.js:
--------------------------------------------------------------------------------
1 | const prizetweetid = [
2 | '1635564319948546051',
3 | '1628817271018885124',
4 | '1559753424681717761',
5 | '1602588263415431170',
6 | '1593969175651053568',
7 | '1594773169713205249',
8 | '1613238456729341953',
9 | '1616586072020111360',
10 | '1667924041041317888',
11 | '1691800730502652194',
12 | ];
13 |
14 | export default prizetweetid;
15 |
16 | export const meetupTweetId = [
17 | '1657785521433907207',
18 | '1655110814897164289',
19 | '1655438948276240385',
20 | '1655088509059989504',
21 | '1657785536394960896',
22 | '1655093095439167490',
23 | '1655290661577564160',
24 | '1655195316818436096',
25 | ];
26 |
--------------------------------------------------------------------------------
/src/index.js:
--------------------------------------------------------------------------------
1 | import ReactDOM from 'react-dom/client';
2 | import { BrowserRouter } from 'react-router-dom';
3 |
4 | import App from './App';
5 |
6 | const root = ReactDOM.createRoot(document.getElementById('root'));
7 |
8 | root.render(
9 |
10 |
11 |
12 | );
13 |
--------------------------------------------------------------------------------
/src/lib/utils.js:
--------------------------------------------------------------------------------
1 | import clsx from 'clsx';
2 | import { twMerge } from 'tailwind-merge';
3 |
4 | /** Merge classes with tailwind-merge with clsx full feature */
5 | export default function clsxm(...classes) {
6 | return twMerge(clsx(...classes));
7 | }
8 |
9 | // Time
10 |
11 | export function getTime(time) {
12 | return `${new Date(time).toLocaleTimeString('en-US', {
13 | timeStyle: 'short',
14 | })}`;
15 | }
16 |
17 | // get Date
18 | export function getDate(time) {
19 | return `${new Date(time).toLocaleDateString('en-US', {
20 | dateStyle: 'medium',
21 | })}`;
22 | }
23 |
24 | // get TimeZone
25 | export function getTimeZone(time) {
26 | return `${/\((.*)\)/
27 | .exec(new Date(time).toString())[1]
28 | .split(' ')
29 | .map((i) => i[0].toUpperCase())
30 | .join('')}`;
31 | }
32 |
33 | // get Date and Time
34 | export function getDateTime(time) {
35 | return `${getDate(time)} ${getTime(time)} ${getTimeZone(time)}`;
36 | }
37 |
--------------------------------------------------------------------------------
/src/pages/CoursesPage.jsx:
--------------------------------------------------------------------------------
1 | import { useState } from 'react';
2 |
3 | import Layout, { Testimonials } from '@/components/layout';
4 | import { About, Courses, Hero } from '@/components/PageComp/CoursesPage';
5 |
6 | const CoursesPage = ({ content }) => {
7 | const [tweetId, setTweetId] = useState([
8 | '1620824479395090435',
9 | '1620489706994806785',
10 | '1620828035804184579',
11 | '1617535692497883138',
12 | '1487399069383155716',
13 | '1544248976664567811',
14 | ]);
15 | return (
16 |
17 |
18 |
19 |
20 |
21 |
22 | );
23 | };
24 | export default CoursesPage;
25 |
--------------------------------------------------------------------------------
/src/pages/EducationalEventsPage.jsx:
--------------------------------------------------------------------------------
1 | import Layout from '@/components/layout';
2 | import {
3 | Hero,
4 | OngoingEvents,
5 | PastEvents,
6 | Testimonials,
7 | } from '@/components/PageComp/EducationalEventsPage';
8 |
9 | import { EducationalEventsPageContent } from './content';
10 |
11 | const EducationalEventsPage = () => {
12 | return (
13 |
14 |
15 |
16 |
17 |
18 |
19 | );
20 | };
21 | export default EducationalEventsPage;
22 |
--------------------------------------------------------------------------------
/src/pages/ErrorPage.jsx:
--------------------------------------------------------------------------------
1 | import Layout from '@/components/layout';
2 | import ArrowLink from '@/components/links/ArrowLink';
3 | import ButtonLink from '@/components/links/ButtonLink';
4 |
5 | import { HomePageFAQ } from '@/pages/content';
6 |
7 | const ErrorPage = () => {
8 | return (
9 |
32 |
33 |
34 |
404 !
35 |
Page Not Found
36 |
37 | Unfortunately, the page you are looking for does not exist. Please
38 | navigate to Home. Thank You
39 |
40 |
41 | Back to home
42 |
43 |
44 |
45 |
46 | );
47 | };
48 |
49 | export default ErrorPage;
50 |
--------------------------------------------------------------------------------
/src/pages/EventsPage.jsx:
--------------------------------------------------------------------------------
1 | import Layout from '@/components/layout';
2 | import { About, EventCategories, Hero } from '@/components/PageComp/EventsPage';
3 |
4 | import { EventsPageContent } from './content';
5 |
6 | const EventsPage = () => {
7 | return (
8 |
9 |
10 |
11 |
12 |
13 | );
14 | };
15 | export default EventsPage;
16 |
--------------------------------------------------------------------------------
/src/pages/HackathonPage.jsx:
--------------------------------------------------------------------------------
1 | import Layout from '@/components/layout';
2 | import {
3 | About,
4 | Hero,
5 | OngoingEvents,
6 | PastEvents,
7 | Stats,
8 | Testimonials,
9 | } from '@/components/PageComp/HackathonsPage';
10 |
11 | import { HackathonsPageContent } from './content';
12 |
13 | const HackathonsPage = () => {
14 | return (
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 | );
24 | };
25 | export default HackathonsPage;
26 |
--------------------------------------------------------------------------------
/src/pages/Hashnode.jsx:
--------------------------------------------------------------------------------
1 | import Layout from '@/components/layout';
2 | import {
3 | About,
4 | Announcement,
5 | GrandPrize,
6 | Hero,
7 | HowTakePart,
8 | Tracks,
9 | } from '@/components/PageComp/HashnodePage';
10 |
11 | import { HashnodePageContent } from './content';
12 |
13 | const HashnodePage = () => {
14 | return (
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 | );
24 | };
25 | export default HashnodePage;
26 |
--------------------------------------------------------------------------------
/src/pages/HomePage.jsx:
--------------------------------------------------------------------------------
1 | import Layout, { Banner } from '@/components/layout';
2 | import {
3 | About,
4 | Content,
5 | Courses,
6 | Events,
7 | Hero,
8 | // Team,
9 | } from '@/components/PageComp/HomePage';
10 |
11 | import { HomePageContent } from './content';
12 |
13 | const HomePage = () => {
14 | return (
15 | <>
16 |
17 |
18 |
19 |
20 |
21 |
22 | {/* */}
23 |
24 |
25 | >
26 | );
27 | };
28 |
29 | export default HomePage;
30 |
--------------------------------------------------------------------------------
/src/pages/OpenSourcePage.jsx:
--------------------------------------------------------------------------------
1 | import { useState } from 'react';
2 |
3 | import { opensourcetweet } from '@/content/opensource';
4 |
5 | import Layout, { Testimonials } from '@/components/layout';
6 | import About from '@/components/PageComp/OpenSourcePage/About';
7 | import Header from '@/components/PageComp/OpenSourcePage/Header';
8 | import OurProjects from '@/components/PageComp/OpenSourcePage/OurProjects';
9 |
10 | const OpenSourcePage = ({ content }) => {
11 | const [tweetId, setTweetId] = useState(opensourcetweet);
12 |
13 | return (
14 |
15 |
16 |
17 |
18 |
23 |
24 | );
25 | };
26 |
27 | export default OpenSourcePage;
28 |
--------------------------------------------------------------------------------
/src/pages/ScholarshipsPage.jsx:
--------------------------------------------------------------------------------
1 | import Layout from '@/components/layout';
2 | import {
3 | Hero,
4 | OngoingEvents,
5 | PastEvents,
6 | Testimonials,
7 | } from '@/components/PageComp/ScholarshipsPage';
8 |
9 | import { ScholarshipsPageContent } from './content';
10 |
11 | const ScholarshipsPage = () => {
12 | return (
13 |
14 |
15 |
16 |
17 |
18 |
19 | );
20 | };
21 | export default ScholarshipsPage;
22 |
--------------------------------------------------------------------------------
/src/pages/SingleCoursePage.jsx:
--------------------------------------------------------------------------------
1 | import { useState } from 'react';
2 |
3 | import Layout, { Testimonials } from '@/components/layout';
4 | import { About, Syllabus } from '@/components/PageComp/SingleCoursePage';
5 |
6 | const CoursesPage = ({ content }) => {
7 | const [tweetId, setTweetId] = useState(content.content.tweetId);
8 | return (
9 |
10 |
11 | {tweetId ? (
12 |
18 | ) : (
19 | <>
20 |
25 | >
26 | )}
27 | {content.content.syllabus.length > 0 && (
28 |
29 | )}
30 |
31 | );
32 | };
33 | export default CoursesPage;
34 |
--------------------------------------------------------------------------------
/src/pages/WebinarPage.jsx:
--------------------------------------------------------------------------------
1 | import Layout from '@/components/layout';
2 | import Testimonials from '@/components/PageComp/HomePage/Testimonials';
3 | import { Hero, Past, Upcoming } from '@/components/PageComp/WebinarPage';
4 |
5 | const WebinarPage = ({ content }) => {
6 | return (
7 |
8 |
9 |
10 |
11 |
12 |
13 | );
14 | };
15 | export default WebinarPage;
16 |
--------------------------------------------------------------------------------
/tailwind.config.js:
--------------------------------------------------------------------------------
1 | /** @type {import('tailwindcss').Config} */
2 |
3 | const { fontFamily } = require('tailwindcss/defaultTheme');
4 |
5 | module.exports = {
6 | content: ['./src/**/*.{js,jsx,ts,tsx}'],
7 | theme: {
8 | extend: {
9 | fontFamily: {
10 | sans: ['General Sans', ...fontFamily.sans],
11 | },
12 | colors: {
13 | primary: 'rgb(var(--primary) , )',
14 | divider: 'rgb(var(--divider) , )',
15 | content: 'rgb(var(--content) , )',
16 | 'base-100': 'rgb(var(--base-100) , )',
17 | 'base-200': 'rgb(var(--base-200) , )',
18 | 'base-gray': 'rgb(var(--base-gray) , )',
19 | 'primary-hover': 'rgb(var(--primary-hover) , )',
20 | 'primary-disable': 'rgb(var(--primary-disable) , )',
21 | },
22 | screens: {
23 | xsm: '370px',
24 | },
25 | keyframes: {
26 | spin: {
27 | to: {
28 | transform: 'rotate(360deg)',
29 | },
30 | },
31 | },
32 | animation: {
33 | spin: 'spin 1s linear infinite',
34 | },
35 | },
36 | },
37 | plugins: [require('@tailwindcss/line-clamp')],
38 | };
39 |
--------------------------------------------------------------------------------