DEV Community

Jan Küster
Jan Küster

Posted on

Here are some JavaScript repos for you to contribute at Hacktoberfest you might not know yet

It's Hacktoberfest! ⌨️
Looking to contribute to open source at #Hacktoberfest2022? Mainly #JavaScript? 🤔
Here are some projects you might not know yet that could be a good entry point:

Meteor

Meteor is an ultra-simple environment for building modern web applications.
It provides a full stack and integrates with many of your favourite frontend technologies.

GitHub logo meteor / meteor

Meteor, the JavaScript App Platform


TravisCI Status CircleCI Status built with Meteor


Meteor is an ultra-simple environment for building modern web applications.



📚 Create your applications using modern JavaScript

Benefit from the latest technology updates to fastly prototype and develop your applications.


Integrate technologies you already use

Use popular frameworks and tools right out-of-the-box. Focus on building features instead of configuring disparate components yourself.


💻 Build apps for any device

Use the same code whether you’re developing for web, iOS, Android, or desktop for a seamless update experience for your users.


🔥 Getting Started

What about to try a getting started tutorial in your favorite technology?

Next, read the documentation and get some examples.

🚀 Quick Start

On your platform, use this line:

> npm install -g meteor
Enter fullscreen mode Exit fullscreen mode

🚀 To create a project:

> meteor create my-app
Enter fullscreen mode Exit fullscreen mode

☄️ Run it:

cd my-app
meteor
Enter fullscreen mode Exit fullscreen mode

🧱 Developer Resources

Building an application with Meteor?

  • Deploy…

CLAIRE

CLAIRE is a classroom management, enriched with reflexive processes.
It is designed to emphasize on methods and interactions with a high reflexive outcome in students and teachers.

GitHub logo classroom-interaction-environment / claire

Classroom Interaction Runtime Environment

CLAIRE - The Classroom Interaction Runtime Environment

built with Meteor JavaScript Style Guide Project Status: Active – The project has reached a stable, usable state and is being actively developed. GitHub

CLAIRE is a classroom management, enriched with reflexive processes It is designed to emphasize on methods and interactions with a high reflexive outcome in students and teachers.

It encourages non-behaviouristic teaching by being as unopinionated as possible when it comes to any action within the classroom:

  • teachers can design a fully detailed list of phases for a lesson but there is no determinism forcing them to execute their lesson in this sequence
  • teachers can freely activate / deactivate learning material for students and the beamer at any moment of an active lesson
  • students are free to skip any interaction
  • teachers and students can create artifacts together, based on student's replies and reflexive discourse
  • the system does not enforce to reveal the identity an answer's respondent to the rest of the class

Watch the technical overview video from Meteor Impact 2021:

CLAIRE | Meteor Impact 2021 - Day 1

Direct link: https://www.youtube.com/watch?v=upKaZyVfONE

lea.online

Our mission is to bring elementary literacy development to the digital space to allow ubiquitous and anonymous learning and diagnostics of someone's literacy.

lea.online developers · GitHub

Our mission is to bring elementary literacy development to the digital space to allow ubiquitous and anonymous learning and diagnostics of someone's literacy. - lea.online developers

favicon github.com

easy-speech

Cross browser Speech Synthesis; no dependencies. This project was created, because it's always a struggle to get the synthesis part of Web Speech API running on most major browsers.

GitHub logo jankapunkt / easy-speech

Cross browser Speech Synthesis

Easy Speech

JavaScript Style Guide Project Status: Active – The project has reached a stable, usable state and is being actively developed. Test suite CodeQL Semantic Analysis npm npm bundle size npm bundle size

Cross browser Speech Synthesis; no dependencies.

This project was created, because it's always a struggle to get the synthesis part of Web Speech API running on most major browsers.

Note: this is not a polyfill package, if your target browser does not support speech synthesis or the Web Speech API, this package is not usable.

Install

Install from npm via

$ npm install easy-speech
Enter fullscreen mode Exit fullscreen mode

Usage

Import EasySpeech and first, detect, if your browser is capable of tts (text to speech):

import EasySpeech from 'easy-speech'
EasySpeech.detect()
Enter fullscreen mode Exit fullscreen mode

it returns an Object with the following information:

{
  speechSynthesis: SpeechSynthesis|undefined,
  speechSynthesisUtterance: SpeechSynthesisUtterance|undefined,
  speechSynthesisVoice: SpeechSynthesisVoice|undefined,
  speechSynthesisEvent: SpeechSynthesisEvent|undefined,
  speechSynthesisErrorEvent: SpeechSynthesisErrorEvent|undefined,
  onvoiceschanged: Boolean,
  onboundary: Boolean,
  onend: Boolean,
  onerror: Boolean,
  onmark: Boolean,
Enter fullscreen mode Exit fullscreen mode

node-oauth/oauth2-server

Complete, compliant and well tested module for implementing an OAuth2 server in Node.js.
Maintained fork of OauthJS with ongoing development and improvements.

GitHub logo node-oauth / node-oauth2-server

Complete, compliant and well tested module for implementing an OAuth2 Server/Provider with express in node.js -- the unofficial successor to oauth2-server (https://github.com/oauthjs/node-oauth2-server)

@node-oauth/oauth2-server

Complete, compliant and well tested module for implementing an OAuth2 server in Node.js.

NOTE: This project has been forked from oauthjs/node-oauth2-server and is a continuation due to the project appearing to be abandoned. Please see our issue board to talk about next steps and the future of this project.

Installation

npm install @node-oauth/oauth2-server
Enter fullscreen mode Exit fullscreen mode

The @node-oauth/oauth2-server module is framework-agnostic but there are several officially supported wrappers available for popular HTTP server frameworks such as Express and Koa. If you're using one of those frameworks it is strongly recommended to use the respective wrapper module instead of rolling your own.

Features

  • Supports authorization_code, client_credentials, refresh_token and password grant, as well as extension grants, with scopes.
  • Can be used with promises, Node-style callbacks, ES6 generators and async/await (using Babel).
  • Fully RFC 6749 and RFC 6750 compliant.
  • Implicitly supports any form of storage…

latexcv

A collection of simple and easy to use, yet powerful LaTeX templates for CVs and resumes.

GitHub logo jankapunkt / latexcv

👔 A collection of cv and resume templates written in LaTeX. Leave an issue if your language is not supported!

latexcv icon
LaTex CV and Resume Collection



👔 A collection of simple and easy to use, yet powerful LaTeX templates for CVs and resumes. All of them are self designed and self implemented and not copied from template collections

Now with support for Chinese, Japanese and Korean character encoding. Setup is only two lines of code! Read more here.

Classic Modern Two Columns
Classic CV example preview Modern CV example preview Two Column CV example preview
Sidebar Sidebar Left Row Layout
Sidebar CV example preview Left sidebar CV example preview Row-Layout CV example preview
Infographics Infographics 2 EN Infographics 2 FR
Infographics CV example preview Infographics CV example preview Infographics CV example preview

Great first impression

Point out with a progressive layout. Give decision makers and HR only the most important information about you on one single page.

Beginner friendly

Pick a template, replace the content, compile, done. If that's not enough you can easily customize colors, fonts and layout. The templates are documented directly in the code.

Minimal environment

You need a minimal tex-live distribution to compile the templates. No XeTeX or LuaTeX required. No other SDKs or…




npm package template

Minimal, optinionated, tested and fully functional NPM package template project for ES6+ Javascript.

GitHub logo jankapunkt / npm-package-template

📦 minimal NPM package template using Babel, Mocha, Chai, Istanbul, Standardjs and JSDoc.

📦 NPM Package Template 📦

Test suite Build Status JavaScript Style Guide Project Status: Active – The project has reached a stable, usable state and is being actively developed. GitHub

Minimal tested and fully functional NPM package template project for ES6+ Javascript.

About this package

This template is intended to allow you to start developing immediatly with a working set of tools and scripts that play well together.

It is little opinionated to the point, that only the most basic tools are integrated If you want a different flavour you can fork this project and easily replace the tools or add new ones.

Which tools are used?

All tools are only defined as dev-dependencies:

Getting started

Just create your Js files in the ./lib folder and add the tests in the test

detect-os

Detect current running OS including version and arch, if possible. No dependencies. All code < 300 lines.

GitHub logo jankapunkt / js-detect-os

Detect current running OS including version and codename.

Detect OS in Javascript

CI JavaScript Style Guide Project Status: Active – The project has reached a stable, usable state and is being actively developed. GitHub

Detect current running OS including version and arch, if possible No dependencies. All code < 300 lines.

This is just a minimal, simple and incomplete package to detect the following:

  • os - Android, Windows, OSX, Linux etc. or undefined for unknown
  • isMobile - true if a mobile OS, otherwise false
  • name - For example "Ubuntu" when OS is "Linux" or undefined
  • arch - 32, 64 or undefined
  • ram - if navigator.deviceMemory is available or undefined

Uses mainly navigator.platform and navigator.userAgent as second guess for detection.

No legacy support yet, no support for OS-minorites yet. Feel free to contribute!

Why not use feature detection instead?

Yes we all know this is the better option. However, this package intends to detect the OS and not the browser, so feature detection won't help that much.

There are more distinct ways of detecting the OS based on certain ways of…

js-class-privacy

Uses proxies to implement private members when the native equivalent is not available.

GitHub logo jankapunkt / js-class-privacy

Create a given ES6 class with private members using Proxy and closures. Keeps class code clean, encourages SRP and DRY.

🔒 Javascript Class-Privacy

Build Status JavaScript Style Guide Project Status: Active – The project has reached a stable, usable state and is being actively developed. npm bundle size

Lean dry no-dep srp :cup: package to create instances from classes with defined private members Keep your classes clean und use this instead to define private properties Uses proxies to hide information.

Installation and basic usage

Install this package via NPM like

$ npm install class-privacy
Enter fullscreen mode Exit fullscreen mode

The packages exports only one function, that acts similar to an abstract factory You can pass in a decide function to define rules (e.g. whitelist) for members. The created factory can be used to create (proxies to) instances that contain only the public members.

import createFactory from 'class-privacy'
export class Person {
  constructor ({ name, age }) {
    this.name = name
    this.age = age
  }

  greet () {
    return `Hello, my name is "${this.name}". I am ${this.age} years old.`
  }
}

// make
Enter fullscreen mode Exit fullscreen mode

Notes on these repos

All repositories are either maintained by myself or I am more or less involved in their development process and I can support you when working on a PR (reference me via jankapunkt on GitHub). And now, happy coding! 🤩

Follow me on Twitter or my other socials for updates, to stay in touch or contact me:

GitHub: https://github.com/jankapunkt/
Twitter: https://twitter.com/Kuester_Jan/
LinkedIn: https://linkedin.com/in/jan-kuester/
Support my work: https://paypal.me/kuesterjan

Top comments (0)