Coder Social home page Coder Social logo

softwarecrafters / website Goto Github PK

View Code? Open in Web Editor NEW
36.0 6.0 83.0 10.34 MB

The website powering softwarecrafters.org, a website for people to find their local Software Craft communities.

Home Page: https://softwarecrafters.org

License: MIT License

JavaScript 72.90% HTML 21.13% SCSS 5.97%
software-crafters community website

website's Introduction

Favicon Software Craft Website

Build Status Deps DevDeps

The website powering softwarecrafters.org, a website for people to find their local Software Craft communities.

Feel free to fork this repository and add your local community to it.

⚙️ Setup

The website uses rollup to bundle the client-side JS and some hand-written preprocessing in order to merge and lint the communities/*.json files. The app is integrated via Travis and deployed to netlify.com.

It is helpful to use nvm in order to make sure you're using the particular node version we are using.

nvm install           # installs the node version we are using
npm install -g yarn   # Install yarn
yarn                  # Install dependencies

yarn build            # Build initial version
yarn watch            # Run the watch task
yarn test             # Validate the present schemata

🌐 Adding your community / conference

If you want to add your local community / conference to the map, please have a look at how the other communities added their community (resp. conferences). There is a JSON schema your community.json is validated against through Travis (resp. for conferences).

  1. Fork this repository
  2. Create a new file in communities/${YOURCITYNAME}.json (resp. conferences/${YOURCONFERENCE}.json)
  3. Enter valid JSON as of the schema (resp. conferences_schema.json)
  4. Commit & push your change
  5. Create a Pull Request against this repository

Finding the coordinates of your city...

...can be very tricky, which is why we're logging the current position of your mouse every time you click somewhere on the map.

GIF showing how a mouse click logs the coordinates under the map to the console

🌐 Showing upcoming conferences on your conference page

A lot of the conferences listed here also list their "sibling"-conferences on their website so your attendees might be inspired to visit another conference in our communities. We highly encourage you to do that and provide a couple of ways of sourcing our data, either live or at build-time of your website:

  • conferences.json contains all conferences (including past conferences right now).
  • conferences.js is a jsonpscript that will call the function window.softwarecraft_conferences_callback with the exact same data as is contained in conferences.json.
  • See conferences_schema.json for a JSON-schema of an individual conference. The JSON will always contain an array of these.

Example code (not tested)

<script type="application/javascript">
window.softwarecraft_conferences_callback = function(conferences) {
  console.log("Received conferences", conferences);
  for(let conference of conferences) {
    document.write(conference.name)
  }
}
</script>
<script type="application/javascript" src="https://softwarecrafters.org/conferences.js"></script>

👍 Contributing to the website

TBD

💻 3rd-party libraries used

To be documented. For the moment, have a look at our target/vendor/ directory and our package.json.

  • materialize-css
  • rollup
  • babel
  • font-awesome
  • mapbox
  • jquery

The logo is a remix of 🌐 from emojiOne released under Creative Commons Attribution 4.0 International and the Softwerkskammer Logo released under Creative Commons Attribution 3.0.

website's People

Contributors

adelinast avatar adithemighty avatar coderbyheart avatar dependabot[bot] avatar dragan-stepanovic avatar ethanstrominger avatar fakih avatar giuffre avatar gsaslis avatar gtrefs avatar haraldreingruber avatar javiercane avatar jukecraft avatar ksouf avatar lattinbg avatar ludopradel avatar marc-bouvier avatar midmandle avatar mrksdck avatar mzampetakis avatar nicoespeon avatar patbaumgartner avatar pinage404 avatar poschi3 avatar rradczewski avatar rubendm92 avatar sizovs avatar software-crafters-karachi avatar sylvainmoingeon avatar tomphp avatar

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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

website's Issues

Add conferences to map

Should probably have an own schema and a color to set them apart from the communities.

Support Slack Channels in Schemata and Popup

Might be nice to be able to quickly jump into the Slack and join a channel through the popup.

Steps:

  • Add optional slack_channel attribute (+ description whether to include # or not 😅 ) to the JSON schema
  • Show Join #channel invitation (with target=_blank leading to https://softwarecraftsmanship.slack.com/messages/${slack_channel}/ in popup if present
  • (Optional): Provide slack_channel_id as to be able to deeplink into slack clients using deep links alas slack://channel?team=${TEAM_ID}&id=${CHANNEL_ID} (our ${TEAM_ID} is T0A7W9V7C).

Add a "Start a local community" button + modal

Might be nice to encourage people to start their "own" local community. I imagine the easiest thing would be:

  • A button at the top "Start a local community"
  • A modal that contains information on
    • How to connect to other organizers (#orgasunited)
    • How to get a first meetup going (2 people)
    • Websites to help you, e.g. Softwerkskammer.org, Meetup or EventBrite
    • Further resources on how to run meetups, e.g. our swkBerlin/resources repo

Make Code of Conduct mandatory for conferences by 2021 ✔️

Hei 👋 friends,

I have taken on the task of merging #72. As a community we are already close to be able to implement this because right now the majority of conferences already provide a link to a code of conduct:

Conference Code of Conduct Contact
AgileCrete - @gsaslis
Codefreeze https://codefreeze.fi/#code-of-conduct
DevTernity https://devternity.com/code_of_conduct.html
#humansconf https://www.humansconf.org/code-of-conduct
I T.A.K.E. Unconference https://itakeunconf.com/code-of-conduct/
JSCraftcamp http://jscraftcamp.org/values
Mob Programming Conference https://mobprogrammingnewengland.com/code-of-conduct
Software Crafters Unconference https://scunconf.com/#coc
SoCraTes Austria 2019 http://socrates-conference.at/en/code-of-conduct/
SoCraTes Belgium http://socratesbe.org/#coc
SoCraTes Canada https://socrates-ca.github.io/#portfolioModal2
SoCraTes Canaries http://socracan.com/#coc (404)
SoCraTes Switzerland https://www.socrates-ch.org/#code-of-conduct
SoCraTes Day Berlin https://www.socratesday.berlin
SoCraTes Day Switzerland - @ollin
SoCraTes Day Franconia http://socrates-day-franken.de/ (404)
SoCraTes Germany https://www.socrates-conference.de/values
SoCraTes Rennes https://socrates-rennes.github.io/#a-propos
SoCraTes France https://socrates-fr.github.io/#portfolioModal2
SoCraTes Italy http://www.socrates-conference.it/
SoCraTes UK https://socratesuk.org/code_of_conduct.html
Software Crafters Barcelona https://scbcn.github.io/coc.html
Software Engineering Camp - @poschi3

Rationale

The Software Crafters community believes in inclusivity. Only through providing a safe and welcoming environment to everyone who wants to engage in events promoted by us will we grow personally and as an industry in a meaningful and responsible way. While there exists not one code of conduct that can apply to all types of events, we recognize however the Code of Conduct of the SoCraTes conference in Germany as a great example. It has been served other events as a good example and we encourage conference organizers to adapt, but not copy verbatim, its contents to suit their event and team.

Proposed actions

In order to resolve this issue I propose these actions:

  • Existing conferences: I would kindly ask the remaining conference organizers (mentioned above) to adopt a Code of Conduct by the end of 2020. A good example for a Code of Conduct is https://socrates-conference.de/values.
  • As soon as all existing conferences have provided a Code of Contact link, merge #72 so that it is enforced immediately for new entries.
  • New conferences: All new entries for conferences must provide a link to a Code of Conduct as of today.
  • Conference entries without a valid Code of Conduct will be removed in January 2021.

Support custom icons as markers

Can be provided as assets, but integrating them with MapBox seemed to be a bit tricky.
Would be nice to have them instead of common markers (or on the popups).

Initialize map on a random community

Right now, as to not favor any region over another, the map is initialized on a random longitude. Would be nice to center the map on one of the random present communities instead

ERROR: "watch:serve" exited with 1.

followed Setup tasks:

$ nvm install
$ npm install -g yarn
$ yarn
$ yarn build
$ yarn watch
yarn watch v1.0.1
$ npm-run-all build:communities -p watch:serve watch:js
/bin/sh: 1: serve: not found
error Command failed with exit code 127.
error Command failed with signal "SIGTERM".
ERROR: "watch:serve" exited with 1.
error Command failed with exit code 1.

Create README

The README should explain

  • How to contribute to the project
    • How to add a community to the list and verify it
    • How to improve the code
  • How to get the project running
  • Provide further resources

Add missing conferences to website

There is only one conference listed right now, the SoCraTes Germany in Soltau. It would be great to have all the other conferences on here too. Conferences follow a similar schema to the communities.

Lots of the conferences list their "Partner conferences" on their site:

Missing conferences (non-exhaustive)

  • SoCraTes UK
  • SoCraTes Canaries
  • SoCraTes Italy
  • SoCraTes Belgium
  • SoCraTes Switzerland
  • Codefreeze
  • SoCraTes Day Berlin
  • SoCraTes Day Linz

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.