Giter Site home page Giter Site logo

copenhagenjs / copenhagenjs.dk Goto Github PK

View Code? Open in Web Editor NEW
25.0 3.0 16.0 6.42 MB

Website for CopenhagenJS - A monthly javascript meetup group

Home Page: https://copenhagenjs.dk

JavaScript 71.86% CSS 1.92% HTML 0.20% Dockerfile 0.44% Shell 0.19% TypeScript 22.84% Starlark 2.56%
javascript community meetup

copenhagenjs.dk's Introduction

๐Ÿ“ฆ CopenhagenJS Website

Find it inside web folder.

Made with Next.js and deployed to Firebase.

How to run the website:

$ npm install
$ npm run dev

And the CopenhagenJS Website should become available on http://localhost:3000

Storybook

We uses storybook for our components and we deploy it publicly here: CopenhagenJS Storybook

How to run services

First install bazel

Then build each service separately

$ bazel build //runs/graphql:docker
$ bazel build //runs/feed:docker
$ bazel build //runs/auth:auth

or build them all

$ bazel build //runs/...

copenhagenjs.dk's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

copenhagenjs.dk's Issues

Add feed that has countdown

Christopher from HackYourFuture want to post to Slack when there is 7 days to CopenhagenJS.

He is using Zapier to post on Slack and Zapier can read from a ATOM feed.

We should add a feed that can be customized when to add a meetup to the feed.

/feed.xml?daysbefore=7
Will add the event 7 days before it happens

/feed.xml?daysbefore=2
Will add the event 2 days before it happens

๐Ÿ˜„

Question: what are the plans for older posts

Are there plans to update older posts to adhere with newer requirements? so the data becomes more complete.

I would love to spend some time on this if it has any interest, I personally think it would have value.

Add type to User

We need to add a type to user to add access levels.

A bit like on meetup.com you can have more permissions if you are a organizer than a normal user.

It can also be used to only show information to organizers first which are not accessible by users.

Write a script to pull out all speakers

As speakers are getting documented we need a script that parses all the markdown documents and produces a JSON document with all the speakers.

That document can be used to display all speakers on a new page on the copenhagenjs.dk website.

pseudocode:
loop through markdown files ->
parse with frontmatter
return speakers

For the first version we don't need to combine speakers, it should just be a list of all meetups with speakers:

{
  "speakers": [
    {
      "src": "xxx.md",
      "speakers": [{}, {}, {}]
    },
    {
      "src": "xxx.md",
      "speakers": [{}, {}, {}]
    },
    {
      "src": "xxx.md",
      "speakers": [{}, {}, {}]
    }
  ]
}

That file can be loaded in the front-end with fetch and looped over ๐Ÿ˜„

Show the videos as two columns

Right now it is difficult to quickly get a overview of all the videos that exist.

This will help by making each video taking up 1/4 of the space if it is in 2 columns.

Add welcome page for logged in users

Add a page that welcomes the user when they are logged in. This page will include a link to the edit profile page in the future.

Should be called /profile

Add more resources with links to Learn Javascript page

I would like to add a few more links to learn page. These links will be accompanied by a brief description about whether the resource is free or paid (or has free trials available if paid):

Courses
Frontend Masters (Free 6-month subscription available for verified students)
Lynda - JavaScript Essential Training (Paid but one month free trial available)
Treehouse - JavaScript (Paid but free trial available)
Udemy - Web Developer Bootcamp (Paid course)
YouTube - The Net Ninja (Free)

Books
Axel Rauschmayer - Speaking JavaScript (FREE HTML VERSION AVAILABLE ONLINE)
Nicholas Zakas - Professional JavaScript for Web Developers

Other Online Resources
W3Schools - JavaScript (Free)

Make ghostprofiles for speakers

This should allow us to make a profile that can be shown if there is no user profile found.

This is because it is unlikely that all speakers will create a profile before they speak.

Update graphql events query to filter upcoming events

Right now it by defaults takes the latest event, that is a problem if there is multiple upcoming events, then it will show the one furthest in the future.

I think the best solution would be to add a enum type to have either
UPCOMING
PAST

So you can take the first 1 upcoming meetup event.

Newsletter

I think it could be a good idea to add a newsletter to copenhagen.js, because I think a lot of people want to go to copenhagenjs, but simply forgets that it is there, and if you are not a geek on twitter, you simply do not get the message, also since Lanyard don't do anything clever at all!

What is the opinion to that?

I am thinking that it will just post from the rss feed! :)

Show date on frontpage

I missed adding the date for the most upcoming event, people can't see when the next event is on the frontpage

Add a feed for upcoming events

We need to make a feed that shows all events that are published and upcoming.

We should add a field to the frontmatter that says, publish_on: and only after that date it will be part of the feed so that we can still put upcoming events on the website but without notifying people about it too early.

https://www.npmjs.com/package/feed

We will then configure the newsletter to send out emails about upcoming events.

Show stats about meetups

Show on the "all events" page some stats of how many meetups there has been.

There is something cool with CopenhagenJS that is has some legacy :)

Attach user to a speaker profile

There should be a way to attach a user to a speaker. This will allow users to make speaker profiles better with more details and descriptions.

One solution could be to add a field to User which would be the speaker slug.

Then when you look up a speaker, you can look up a user that has a field with that speakers slug.

Question: Hard-coded absolute paths and dev instance

I can get the site running locally using the basic information from the README.

$ npm run dev

But the source is scattered with hard-coded absolute paths, I have tried to change them, but the changes are not reflected in the running instance.

Do you need to rebuild the contents or the GraphQL instance?

Recommend Projects

  • React photo React

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

  • Vue.js photo Vue.js

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

  • Typescript photo Typescript

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

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

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

  • web

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

  • server

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

  • Machine learning

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

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

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

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.