Giter Site home page Giter Site logo

publiclab / inline-markdown-editor Goto Github PK

View Code? Open in Web Editor NEW
30.0 14.0 37.0 5.38 MB

An inline wysiwyg markdown document editor based on replacing string subsections. WYSIWYG possible via woofmark.

Home Page: https://publiclab.github.io/inline-markdown-editor/examples/

License: GNU General Public License v3.0

JavaScript 99.29% HTML 0.71%
wysiwyg markdown wiki editor javascript

inline-markdown-editor's Introduction

inline-markdown-editor

Build Status Code Climate

An inline wysiwyg markdown document editor based on replacing string subsections. WYSIWYG possible via the woofmark-based PublicLab.Editor.

Basics

inline-markdown-editor splits up a Markdown-containing string by double newlines into sections, and parses each into HTML, which it displays.

It then adds an "edit button" beneath each section, which expands a nice form for editing that section either as Markdown or in rich text with a WYSIWYG editor.

Upon submitting the form, an asynchronous AJAX post request is made to the specified server with parameters before and after, containing the original subsection markdown and its replacement. The form listens for a true or false response and updates the section's displayed HTML accordingly.

For a demo, see:

https://publiclab.github.io/inline-markdown-editor/examples/

https://publiclab.github.io/inline-markdown-editor/examples/wysiwyg

Usage

For an easy start, you can begin using inline-markdown-editor by pointing it at a markdown-containing element by its selector, and specifying a URL to send changes to.

inlineMarkdownEditor({
  replaceUrl: '/wiki/replace/',
  selector: '.markdown'
});

You can also specify filters to run on the raw original markdown before display, and afterwards upon the displayed DOM element, as well as override several other defaults:

inlineMarkdownEditor({
  replaceUrl: '/wiki/replace/' + wiki_id,
  selector: '.markdown',
  preProcessor: function preProcessMarkdown(markdown) {
    // do things to markdown here before it's used to construct the form
    return markdown
  },
  postProcessor: function postProcessContent(element) {
    // do things to element here after the section has been converted to HTML and displayed
  },
  defaultMarkdown: function(markdown) {}, // a markdown parser
  buildSectionForm: function() {}, // return a string containing the form element
  onComplete: function(response, markdown, html, el, uniqueId, form, o) {}, // run on completing AJAX post
  isEditable: function(markdown) {}, // returns boolean; whether a given subsection should get an inline form; default skips HTML and horizontal rules
  extraButtons: { 'fa-icon-name': function(element) {} }, // object with keys of icon names for additional buttons with associated actions for each; returns jQuery element upon construction
  submitSectionForm: function(event, before, after, options) {}, // optional, to override the form submission handling for each subsection; before/after represent the text diff
  editorOptions: {} // any options to pass to the built-in PublicLab.Editor instance
});

Contributing

To install this library for development, you'll need NodeJS. You can get the detailed instruction on installing node and npm in its official documentation.

After installing node and npm run npm install from the root directory.

inline-markdown-editor uses grunt - the JavaScript task runner - for compilation of the modules. To install grunt run npm install -g grunt-cli. You may have to use sudo for root privileges.

Make changes to the files in the /src/ directory, then run grunt build to compile into /dist/inlineMarkdownEditor.js. This will use grunt-browserify to concatenate and include any node modules named in require() statements. You'll then be able to try it out in /examples/index.html. Run grunt and leave it running to build as you go.

Installation Guide

Pre-requisites

  • A Laptop :)
  • NodeJS
  • Install NodeJS.

  • Instructions for installing node and npm available in the documentation.

  • After installing nodejs, then comes running and installation of Grunt.

  • Use this command

  • npm run npm install from root directory :)

This repository inline-markdown-editor uses grunt - the JavaScript task runner - for compilation of the modules.

  • Grunt is a JavaScript task runner, a tool used to automatically perform frequent tasks such as minification, compilation, unit testing, and linting. It uses a command-line interface to run custom tasks defined in a file (known as a Gruntfile). Grunt was created by Ben Alman and is written in Node.js. It is distributed via npm. As of September 2016, there were more than 5,000 plugins available in the Grunt ecosystem.

Grunt Installation

  • To install grunt run npm install -g grunt-cli. You may have to use sudo for root privileges.
  • Make changes to the files in the /src/ directory.
  • Run grunt build to compile into /dist/inlineMarkdownEditor.js.
  • This will use grunt-browserify to concatenate and include any node modules named in require() statements.
  • You can try out in /examples/index.html.
  • Run grunt.
  • You are all set. Happy contributing :)

Tests

Tests are set up with Jasmine, and can be run with npm test.

Goals

  • configurable editors
    • plan for swappable editors; will need to specify both constructor and onEditorSubmit in processSection
  • better modularization of processSection.js
  • more tests

Tests we want

  • defaultMarkdown
  • preProcessor
  • postProcessor
  • insertForm: look for the form, the button

inline-markdown-editor's People

Contributors

adinalini avatar aspriya avatar borzois avatar debck avatar dependabot-preview[bot] avatar dependabot[bot] avatar faithngetich avatar gavrilenkogeorgi avatar govindgoel avatar im-prakher avatar jywarren avatar pydevsg avatar rexagod avatar unnati914 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

Watchers

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

inline-markdown-editor's Issues

Add a meta description

Hi, this is a first-timers-only issue. This means we've worked to make it more legible to folks who either haven't contributed to our codebase before, or even folks who haven't contributed to open source before.

If that's you, we're interested in helping you take the first step and can answer questions and help you out as you do. Note that we're especially interested in contributions from people from groups underrepresented in free and open source software!

We know that the process of creating a pull request is the biggest barrier for new contributors. This issue is for you πŸ’

If you have contributed before, consider leaving this one for someone new, and looking through our general help wanted issues. Thanks!

πŸ€” What you will need to know.

Nothing. This issue is meant to welcome you to Open Source :) We are happy to walk you through the process.

πŸ“‹ Step by Step

  • πŸ™‹ Claim this issue: Comment below. If someone else has claimed it, ask if they've opened a pull request already and if they're stuck -- maybe you can help them solve a problem or move it along!

  • πŸ“ Update: This is a quick one, but important for the site's SEO at the same time. Based off the docs here you need to add a meta description to the html files. That's it!

  • πŸ’Ύ Commit your changes

  • πŸ”€ Start a Pull Request. There are two ways how you can start a pull request:

  1. If you are familiar with the terminal or would like to learn it, here is a great tutorial on how to send a pull request using the terminal.

  2. You can also edit files directly in your browser and open a pull request from there.

  • 🏁 Done Ask in comments for a review :)

Please keep us updated

πŸ’¬β° - We encourage contributors to be respectful to the community and provide an update within a week of claiming a first-timers-only issue. We're happy to keep it assigned to you as long as you need if you update us with a request for more time or help, but if we don't see any activity a week after you claim it we may reassign it to give someone else a chance. Thank you in advance!

If this happens to you, don't sweat it! Grab another open issue.

Is someone else already working on this?

πŸ”—- We encourage contributors to link to the original issue in their pull request so all users can easily see if someone's already started on it.

πŸ‘₯- If someone seems stuck, offer them some help! Otherwise, take a look at some other issues you can help with. Thanks!

πŸ€”β“ Questions?

Leave a comment below!

Add CONTRIBUTING.md

Hi, this is a first-timers-only issue. This means we've worked to make it more legible to folks who either haven't contributed to our codebase before, or even folks who haven't contributed to open source before.

If that's you, we're interested in helping you take the first step and can answer questions and help you out as you do. Note that we're especially interested in contributions from people from groups underrepresented in free and open source software!

We know that the process of creating a pull request is the biggest barrier for new contributors. This issue is for you πŸ’

If you have contributed before, consider leaving this one for someone new, and looking through our general help wanted issues. Thanks!

πŸ€” What you will need to know.

Nothing. This issue is meant to welcome you to Open Source :) We are happy to walk you through the process.

πŸ“‹ Step by Step

  • πŸ™‹ Claim this issue: Comment below. If someone else has claimed it, ask if they've opened a pull request already and if they're stuck -- maybe you can help them solve a problem or move it along!

  • πŸ“ Update: Add a CONTRIBUTING.md file to this repository by including all the content mentioned below and submitting a PR to us with the same. You can also check out an existing CONTRIBUTING.md here for reference purposes.

Contributing to inline-markdown-editor
==========================

We welcome community contributions to inline-markdown-editor! To install inline-markdown-editor locally, follow the instructions in the [README.md file](https://github.com/publiclab/inline-markdown-editor#contributing).

We especially welcome contributions from people from groups underrepresented in free and open source software!

Our community aspires to be a respectful place. Please read and abide by our [Code of Conduct](https://publiclab.org/conduct).

## First Timers Welcome!

New to open source/free software? See our WELCOME PAGE, including a selection of issues we've made especially for first-timers. We're here to help, so just ask if one looks interesting:

https://code.publiclab.org/#r=all

Thank you so much!

Learn more about contributing to Public Lab code projects on these pages:

* https://publiclab.org/developers
* https://publiclab.org/contributing-to-public-lab-software
* https://publiclab.org/soc
* https://publiclab.org/wiki/developers
* https://publiclab.org/wiki/gsoc-ideas

## Bug reports & troubleshooting

If you are submitting a bug, please go to https://github.com/publiclab/inline-markdown-editor/issues/new

  • πŸ’Ύ Commit your changes

  • πŸ”€ Start a Pull Request. There are two ways how you can start a pull request:

  1. If you are familiar with the terminal or would like to learn it, here is a great tutorial on how to send a pull request using the terminal.

  2. You can also edit files directly in your browser and open a pull request from there.

  • 🏁 Done Ask in comments for a review :)

πŸ€”β“ Questions?

Leave a comment below!

Is someone else already working on this?

We encourage you to link to this issue by mentioning the issue # in your pull request, so we can see if someone's already started on it. If someone seem stuck, offer them some help! Otherwise, take a look at some other issues you can help with. Thanks!

[WIP] Inline Editor won't save changes

As is discernable from the gif below (which @gauravano was very kind to make for me since I was experiencing some issues), the content remains as is after making the edits. As of now I suppose we
can send dummy requests (before and after sets) to /wiki/replace/<wiki_id>, and verify the fact that we're getting the expected response first. If it happens to be so, I'll look into the fetch process in the front and implement the appropriate changes.

ezgif-4-e4baee1d4a83

https://publiclab.github.io/inline-markdown-editor/examples/

https://publiclab.github.io/inline-markdown-editor/examples/wysiwyg

Similar problem exists in the demo links provided in the README as well.

/cc @jywarren

Remove Bower support

Hi, this is a first-timers-only issue. This means we've worked to make it more legible to folks who either haven't contributed to our codebase before, or even folks who haven't contributed to open source before.

If that's you, we're interested in helping you take the first step and can answer questions and help you out as you do. Note that we're especially interested in contributions from people from groups underrepresented in free and open source software!

We know that the process of creating a pull request is the biggest barrier for new contributors. This issue is for you πŸ’

If you have contributed before, consider leaving this one for someone new, and looking through our general help wanted issues. Thanks!

πŸ€” What you will need to know.

Nothing. This issue is meant to welcome you to Open Source :) We are happy to walk you through the process.

πŸ“‹ Step by Step

  • πŸ™‹ Claim this issue: Comment below. If someone else has claimed it, ask if they've opened a pull request already and if they're stuck -- maybe you can help them solve a problem or move it along!

  • πŸ“ Update: To complete this PR, you need to,

    • Remove bower.json
    • Add the same file and bower_components to .gitignore
  • πŸ’Ύ Commit your changes

  • πŸ”€ Start a Pull Request. There are two ways how you can start a pull request:

  1. If you are familiar with the terminal or would like to learn it, here is a great tutorial on how to send a pull request using the terminal.

  2. You can also edit files directly in your browser and open a pull request from there.

  • 🏁 Done Ask in comments for a review :)

Please keep us updated

πŸ’¬β° - We encourage contributors to be respectful to the community and provide an update within a week of claiming a first-timers-only issue. We're happy to keep it assigned to you as long as you need if you update us with a request for more time or help, but if we don't see any activity a week after you claim it we may reassign it to give someone else a chance. Thank you in advance!

If this happens to you, don't sweat it! Grab another open issue.

Is someone else already working on this?

πŸ”—- We encourage contributors to link to the original issue in their pull request so all users can easily see if someone's already started on it.

πŸ‘₯- If someone seems stuck, offer them some help! Otherwise, take a look at some other issues you can help with. Thanks!

πŸ€”β“ Questions?

Leave a comment below!

tests for error handling

@aspriya -- i wanted to request one more mini-project, which I think will make your later work (publiclab/plots2#1438) easier to debug. When people submit an updated text to replace, sometimes things go wrong for whatever reason, so there's an onFail handler for that.

I'd like to suggest we add a test for that error handling -- that, when the server responds with anything but success (and there are multiple types of response -- slow, not found, 500 errors, etc), we correctly run the onFail function.

Tests go here: https://github.com/publiclab/inline-markdown-editor/tree/master/spec/javascripts

And there are Jasmine-based techniques for testing asynchronous methods, since it'll send a request you'll have to "mock" a response to. @mridulnagpal is doing this in this PR -- you can ask him for help: publiclab/leaflet-blurred-location#29

Specifically on these lines: https://github.com/publiclab/leaflet-blurred-location/pull/29/files#diff-4f0907a1b7ae8b13345db1251fd425b2R42

There could be one test for each type of response. Jasmine documentation is here:

(This is the documentation for v1.3 but it's better than the 2.x docs --)

https://jasmine.github.io/1.3/introduction#section-Asynchronous_Support

Make sense? I'd love to see this before you continue with your big checklist. Thanks!

Error on some complex wiki pages

I'm seeing this now working on https://publiclab.org/wiki/pi-builder?raw=true which is GREAT after #49 and publiclab/plots2#4869.

But now I'm still seeing an error on this page: https://publiclab.org/wiki/gsoc?raw=true

It's due to inline grid content, although the pi-builder page has this too, this page has tables with rows, and one is causing trouble:

application-ce898ad24395aacb043b807fa29328194b2659cef282f7b2b295a05d0845b1eb.js:54921 Uncaught SyntaxError: Invalid regular expression: /^\s*<div class="inline\-grid\-container">
<table class="table inline\-grid notes\-grid notes\-grid\-soc notes\-grid\-soc\-986">
  <tbody><tr>
      <th><a data\-type="title">Title<\/a><\/th>
      <th><a data\-type="author">Author<\/a><\/th>
      <th><a data\-type="updated">Updated<\/a><\/th>
      <th><a data\-type="likes">Likes<\/a><\/th>

We should try putting the exact content into a test here.

Add a fork ribbon

Hi, this is a first-timers-only issue. This means we've worked to make it more legible to folks who either haven't contributed to our codebase before, or even folks who haven't contributed to open source before.

If that's you, we're interested in helping you take the first step and can answer questions and help you out as you do. Note that we're especially interested in contributions from people from groups underrepresented in free and open source software!

We know that the process of creating a pull request is the biggest barrier for new contributors. This issue is for you πŸ’

If you have contributed before, consider leaving this one for someone new, and looking through our general help wanted issues. Thanks!

πŸ€” What you will need to know.

Nothing. This issue is meant to welcome you to Open Source :) We are happy to walk you through the process.

πŸ“‹ Step by Step

  • πŸ™‹ Claim this issue: Comment below. If someone else has claimed it, ask if they've opened a pull request already and if they're stuck -- maybe you can help them solve a problem or move it along!

  • πŸ“ Update the files

  • πŸ’Ύ Commit your changes

  • πŸ”€ Start a Pull Request. There are two ways how you can start a pull request:

  1. If you are familiar with the terminal or would like to learn it, here is a great tutorial on how to send a pull request using the terminal.

  2. You can also edit files directly in your browser and open a pull request from there.

  • 🏁 Done Ask in comments for a review :)

Please keep us updated

πŸ’¬β° - We encourage contributors to be respectful to the community and provide an update within a week of claiming a first-timers-only issue. We're happy to keep it assigned to you as long as you need if you update us with a request for more time or help, but if we don't see any activity a week after you claim it we may reassign it to give someone else a chance. Thank you in advance!

If this happens to you, don't sweat it! Grab another open issue.

Is someone else already working on this?

πŸ”—- We encourage contributors to link to the original issue in their pull request so all users can easily see if someone's already started on it.

πŸ‘₯- If someone seems stuck, offer them some help! Otherwise, take a look at some other issues you can help with. Thanks!

πŸ€”β“ Questions?

Leave a comment below!

Update CI Node versions

Hi, this is a first-timers-only issue. This means we've worked to make it more legible to folks who either haven't contributed to our codebase before, or even folks who haven't contributed to open source before.

If that's you, we're interested in helping you take the first step and can answer questions and help you out as you do. Note that we're especially interested in contributions from people from groups underrepresented in free and open source software!

We know that the process of creating a pull request is the biggest barrier for new contributors. This issue is for you πŸ’

If you have contributed before, consider leaving this one for someone new, and looking through our general help wanted issues. Thanks!

πŸ€” What you will need to know.

Nothing. This issue is meant to welcome you to Open Source :) We are happy to walk you through the process.

πŸ“‹ Step by Step

  • πŸ™‹ Claim this issue: Comment below. If someone else has claimed it, ask if they've opened a pull request already and if they're stuck -- maybe you can help them solve a problem or move it along!

  • πŸ“ Update: To complete this PR, you need to remove node versions 4 and 6 from the .travis.yml file below, and add node version 10. Also, we'd like if you could add a simple "note" subsection to the README.md that shows the basic commands and workflow of the node version manager in order for a contributor to setup and switch between different node versions on their local. You should mention about basic commands such as nvm exec and nvm ls to quickly switch and list all the installed versions, etc. Refer here for help.

node_js:
- '4'
- '6'
- '8'

  • πŸ’Ύ Commit your changes

  • πŸ”€ Start a Pull Request. There are two ways how you can start a pull request:

  1. If you are familiar with the terminal or would like to learn it, here is a great tutorial on how to send a pull request using the terminal.

  2. You can also edit files directly in your browser and open a pull request from there.

  • 🏁 Done Ask in comments for a review :)

Please keep us updated

πŸ’¬β° - We encourage contributors to be respectful to the community and provide an update within a week of claiming a first-timers-only issue. We're happy to keep it assigned to you as long as you need if you update us with a request for more time or help, but if we don't see any activity a week after you claim it we may reassign it to give someone else a chance. Thank you in advance!

If this happens to you, don't sweat it! Grab another open issue.

Is someone else already working on this?

πŸ”—- We encourage contributors to link to the original issue in their pull request so all users can easily see if someone's already started on it.

πŸ‘₯- If someone seems stuck, offer them some help! Otherwise, take a look at some other issues you can help with. Thanks!

πŸ€”β“ Questions?

Leave a comment below!

Remove bower

This repository doesn't require any bower components, so I think we can delete bower.json and eliminate bower completely.

Thoughts @jywarren?

Add an installation section

Hi, this is a first-timers-only issue. This means we've worked to make it more legible to folks who either haven't contributed to our codebase before, or even folks who haven't contributed to open source before.

If that's you, we're interested in helping you take the first step and can answer questions and help you out as you do. Note that we're especially interested in contributions from people from groups underrepresented in free and open source software!

We know that the process of creating a pull request is the biggest barrier for new contributors. This issue is for you πŸ’

If you have contributed before, consider leaving this one for someone new, and looking through our general help wanted issues. Thanks!

πŸ€” What you will need to know.

Nothing. This issue is meant to welcome you to Open Source :) We are happy to walk you through the process.

πŸ“‹ Step by Step

  • πŸ™‹ Claim this issue: Comment below. If someone else has claimed it, ask if they've opened a pull request already and if they're stuck -- maybe you can help them solve a problem or move it along!

  • πŸ“ Update: To complete this PR, you need to add an installation section in the README.md file that clearly depicts and covers basic steps needed for a first-timer to setup the lib, much of which can be scooped out from the "contributing" section, but should also include any personal steps you think should be mention-worthy which you might have encountered during the process. We expect you to have atleast setup the development environment once on your local machine before attempting this issue.

  • πŸ’Ύ Commit your changes

  • πŸ”€ Start a Pull Request. There are two ways how you can start a pull request:

  1. If you are familiar with the terminal or would like to learn it, here is a great tutorial on how to send a pull request using the terminal.

  2. You can also edit files directly in your browser and open a pull request from there.

  • 🏁 Done Ask in comments for a review :)

Please keep us updated

πŸ’¬β° - We encourage contributors to be respectful to the community and provide an update within a week of claiming a first-timers-only issue. We're happy to keep it assigned to you as long as you need if you update us with a request for more time or help, but if we don't see any activity a week after you claim it we may reassign it to give someone else a chance. Thank you in advance!

If this happens to you, don't sweat it! Grab another open issue.

Is someone else already working on this?

πŸ”—- We encourage contributors to link to the original issue in their pull request so all users can easily see if someone's already started on it.

πŸ‘₯- If someone seems stuck, offer them some help! Otherwise, take a look at some other issues you can help with. Thanks!

πŸ€”β“ Questions?

Leave a comment below!

Make Address Bar to matches Brand Colors

Hi, this is a first-timers-only issue. This means we've worked to make it more legible to folks who either haven't contributed to our codebase before, or even folks who haven't contributed to open source before.

If that's you, we're interested in helping you take the first step and can answer questions and help you out as you do. Note that we're especially interested in contributions from people from groups underrepresented in free and open source software!

We know that the process of creating a pull request is the biggest barrier for new contributors. This issue is for you πŸ’

If you have contributed before, consider leaving this one for someone new, and looking through our general help wanted issues. Thanks!

πŸ€” What you will need to know.

Nothing. This issue is meant to welcome you to Open Source :) We are happy to walk you through the process.

πŸ“‹ Step by Step

  • πŸ™‹ Claim this issue: Comment below. If someone else has claimed it, ask if they've opened a pull request already and if they're stuck -- maybe you can help them solve a problem or move it along!

  • πŸ“ Update: To complete this PR, you need to match the address bar's color to PublicLab's site, i.e., a #000 black in the steps indicated here

  • πŸ’Ύ Commit your changes

  • πŸ”€ Start a Pull Request. There are two ways how you can start a pull request:

  1. If you are familiar with the terminal or would like to learn it, here is a great tutorial on how to send a pull request using the terminal.

  2. You can also edit files directly in your browser and open a pull request from there.

  • 🏁 Done Ask in comments for a review :)

Please keep us updated

πŸ’¬β° - We encourage contributors to be respectful to the community and provide an update within a week of claiming a first-timers-only issue. We're happy to keep it assigned to you as long as you need if you update us with a request for more time or help, but if we don't see any activity a week after you claim it we may reassign it to give someone else a chance. Thank you in advance!

If this happens to you, don't sweat it! Grab another open issue.

Is someone else already working on this?

πŸ”—- We encourage contributors to link to the original issue in their pull request so all users can easily see if someone's already started on it.

πŸ‘₯- If someone seems stuck, offer them some help! Otherwise, take a look at some other issues you can help with. Thanks!

πŸ€”β“ Questions?

Leave a comment below!

Remove Other Toolbar buttons

Hi,
Is it possible to remove/hide some of the toolbar buttons? specifically the hyperlink, image, attachment, and the table buttons?

Add CODE_OF_CONDUCT.md

Hi, this is a first-timers-only issue. This means we've worked to make it more legible to folks who either haven't contributed to our codebase before, or even folks who haven't contributed to open source before.

If that's you, we're interested in helping you take the first step and can answer questions and help you out as you do. Note that we're especially interested in contributions from people from groups underrepresented in free and open source software!

We know that the process of creating a pull request is the biggest barrier for new contributors. This issue is for you πŸ’

If you have contributed before, consider leaving this one for someone new, and looking through our general help wanted issues. Thanks!

πŸ€” What you will need to know.

Nothing. This issue is meant to welcome you to Open Source :) We are happy to walk you through the process.

πŸ“‹ Step by Step

  • πŸ™‹ Claim this issue: Comment below. If someone else has claimed it, ask if they've opened a pull request already and if they're stuck -- maybe you can help them solve a problem or move it along!

  • πŸ“ Update: Add a CODE_OF_CONDUCT.md to this repository by referencing the document found here and submitting the same in your PR.

  • πŸ’Ύ Commit your changes

  • πŸ”€ Start a Pull Request. There are two ways how you can start a pull request:

  1. If you are familiar with the terminal or would like to learn it, here is a great tutorial on how to send a pull request using the terminal.

  2. You can also edit files directly in your browser and open a pull request from there.

  • 🏁 Done Ask in comments for a review :)

πŸ€”β“ Questions?

Leave a comment below!

Is someone else already working on this?

We encourage you to link to this issue by mentioning the issue # in your pull request, so we can see if someone's already started on it. If someone seem stuck, offer them some help! Otherwise, take a look at some other issues you can help with. Thanks!

Refactor and modularize `processSection.js`

This has been marked as a good candidate for becoming a first-timers-only issue like these, meaning that it's simple, self-contained, and with some extra formatting, could be a great entry point for a new contributor. If you're familiar enough with this code, please consider reformatting or reposting it as a first-timers-only issue, and then ping @jywarren to get it labelled. Or, if this is not your first time, try to solve it yourself!

To complete this PR, we want you to convert processSection.js into smaller modules and then make use of those inside it. We'd also like if you could, along the way make some refactors such as reducing the numbers of params passed to a function by encapsulating them into an object
with similar props and accessing it accordingly. A good place to start doing this is

// we should need fewer things here:
o.onComplete(xhr.status, after, html, _el, uniqueId, __form, o);

Also, please don't hesitate to ping me, or @jywarren to help you if you're stuck anywhere!

Thanks! πŸŽ‰

Redesign `examples/*html`

Hi, this is a first-timers-only issue. This means we've worked to make it more legible to folks who either haven't contributed to our codebase before, or even folks who haven't contributed to open source before.

If that's you, we're interested in helping you take the first step and can answer questions and help you out as you do. Note that we're especially interested in contributions from people from groups underrepresented in free and open source software!

We know that the process of creating a pull request is the biggest barrier for new contributors. This issue is for you πŸ’

If you have contributed before, consider leaving this one for someone new, and looking through our general help wanted issues. Thanks!

πŸ€” What you will need to know.

Nothing. This issue is meant to welcome you to Open Source :) We are happy to walk you through the process.

πŸ“‹ Step by Step

  • πŸ™‹ Claim this issue: Comment below. If someone else has claimed it, ask if they've opened a pull request already and if they're stuck -- maybe you can help them solve a problem or move it along!

  • πŸ“ Update: To complete this PR, you need to redesign the index.html and select.html files in order to provide a more engaging and vivid demo to the new comers. What you implement mostly depends on your own acumen, with the essential points that,

    • Subexamples provided in the html files should cover all cases, i.e., the different manipulations that ime has to offer.
    • Theme must match the colours used over at https://publiclab.org, i.e., a contrasting combination of black and white (invert maybe?)
    • You can read about color contrasts, text styling and other best practices here to get you started.
  • πŸ’Ύ Commit your changes

  • πŸ”€ Start a Pull Request. There are two ways how you can start a pull request:

  1. If you are familiar with the terminal or would like to learn it, here is a great tutorial on how to send a pull request using the terminal.

  2. You can also edit files directly in your browser and open a pull request from there.

  • 🏁 Done Ask in comments for a review :)

Please keep us updated

πŸ’¬β° - We encourage contributors to be respectful to the community and provide an update within a week of claiming a first-timers-only issue. We're happy to keep it assigned to you as long as you need if you update us with a request for more time or help, but if we don't see any activity a week after you claim it we may reassign it to give someone else a chance. Thank you in advance!

If this happens to you, don't sweat it! Grab another open issue.

Is someone else already working on this?

πŸ”—- We encourage contributors to link to the original issue in their pull request so all users can easily see if someone's already started on it.

πŸ‘₯- If someone seems stuck, offer them some help! Otherwise, take a look at some other issues you can help with. Thanks!

πŸ€”β“ Questions?

Leave a comment below!

Implement legible font size for different media queries

Hi, this is a first-timers-only issue. This means we've worked to make it more legible to folks who either haven't contributed to our codebase before, or even folks who haven't contributed to open source before.

If that's you, we're interested in helping you take the first step and can answer questions and help you out as you do. Note that we're especially interested in contributions from people from groups underrepresented in free and open source software!

We know that the process of creating a pull request is the biggest barrier for new contributors. This issue is for you πŸ’

If you have contributed before, consider leaving this one for someone new, and looking through our general help wanted issues. Thanks!

πŸ€” What you will need to know.

Nothing. This issue is meant to welcome you to Open Source :) We are happy to walk you through the process.

πŸ“‹ Step by Step

  • πŸ™‹ Claim this issue: Comment below. If someone else has claimed it, ask if they've opened a pull request already and if they're stuck -- maybe you can help them solve a problem or move it along!

  • πŸ“ Update: Lighthouse indicates that 54.36% of the font right now is too small to read, making users pinch to zoom. To complete this PR, we advise you to read about Legible Font Sizes and accordingly correct the font sizes for different media queries as the one below.

@media (min-width: 768px) {
.inline-edit-btns {
font-size: 11px;
}

  • πŸ’Ύ Commit your changes

  • πŸ”€ Start a Pull Request. There are two ways how you can start a pull request:

  1. If you are familiar with the terminal or would like to learn it, here is a great tutorial on how to send a pull request using the terminal.

  2. You can also edit files directly in your browser and open a pull request from there.

  • 🏁 Done Ask in comments for a review :)

Please keep us updated

πŸ’¬β° - We encourage contributors to be respectful to the community and provide an update within a week of claiming a first-timers-only issue. We're happy to keep it assigned to you as long as you need if you update us with a request for more time or help, but if we don't see any activity a week after you claim it we may reassign it to give someone else a chance. Thank you in advance!

If this happens to you, don't sweat it! Grab another open issue.

Is someone else already working on this?

πŸ”—- We encourage contributors to link to the original issue in their pull request so all users can easily see if someone's already started on it.

πŸ‘₯- If someone seems stuck, offer them some help! Otherwise, take a look at some other issues you can help with. Thanks!

πŸ€”β“ Questions?

Leave a comment below!

Adjust content's width to fit viewport's width

Hi, this is a first-timers-only issue. This means we've worked to make it more legible to folks who either haven't contributed to our codebase before, or even folks who haven't contributed to open source before.

If that's you, we're interested in helping you take the first step and can answer questions and help you out as you do. Note that we're especially interested in contributions from people from groups underrepresented in free and open source software!

We know that the process of creating a pull request is the biggest barrier for new contributors. This issue is for you πŸ’

If you have contributed before, consider leaving this one for someone new, and looking through our general help wanted issues. Thanks!

πŸ€” What you will need to know.

Nothing. This issue is meant to welcome you to Open Source :) We are happy to walk you through the process.

πŸ“‹ Step by Step

  • πŸ™‹ Claim this issue: Comment below. If someone else has claimed it, ask if they've opened a pull request already and if they're stuck -- maybe you can help them solve a problem or move it along!

  • πŸ“ Update: To complete this PR, you need to, bring about some simple CSS changes so that the site specifies the criteria window.innerWidth === window.outerWidth, for a better accessibility score overall. Please refer here for more details.

  • πŸ’Ύ Commit your changes

  • πŸ”€ Start a Pull Request. There are two ways how you can start a pull request:

  1. If you are familiar with the terminal or would like to learn it, here is a great tutorial on how to send a pull request using the terminal.

  2. You can also edit files directly in your browser and open a pull request from there.

  • 🏁 Done Ask in comments for a review :)

Please keep us updated

πŸ’¬β° - We encourage contributors to be respectful to the community and provide an update within a week of claiming a first-timers-only issue. We're happy to keep it assigned to you as long as you need if you update us with a request for more time or help, but if we don't see any activity a week after you claim it we may reassign it to give someone else a chance. Thank you in advance!

If this happens to you, don't sweat it! Grab another open issue.

Is someone else already working on this?

πŸ”—- We encourage contributors to link to the original issue in their pull request so all users can easily see if someone's already started on it.

πŸ‘₯- If someone seems stuck, offer them some help! Otherwise, take a look at some other issues you can help with. Thanks!

πŸ€”β“ Questions?

Leave a comment below!

Fix `examples/*html` in `gh-pages` branch to show a working demo

Hi, this is a first-timers-only issue. This means we've worked to make it more legible to folks who either haven't contributed to our codebase before, or even folks who haven't contributed to open source before.

If that's you, we're interested in helping you take the first step and can answer questions and help you out as you do. Note that we're especially interested in contributions from people from groups underrepresented in free and open source software!

We know that the process of creating a pull request is the biggest barrier for new contributors. This issue is for you πŸ’

If you have contributed before, consider leaving this one for someone new, and looking through our general help wanted issues. Thanks!

πŸ€” What you will need to know.

Nothing. This issue is meant to welcome you to Open Source :) We are happy to walk you through the process.

πŸ“‹ Step by Step

  • πŸ™‹ Claim this issue: Comment below. If someone else has claimed it, ask if they've opened a pull request already and if they're stuck -- maybe you can help them solve a problem or move it along!

  • πŸ“ Update: Currently, our gh-pages demo doesn't update values. To complete this PR, you need to update replaceUrl fields in our examples/*html of the gh-pages branch (and NOT the main) to http://httpbin.org/post as it returns a 200 back on every POST sent to it (see cURL). We'd also appreciate if you could rope in a few lines from the README.md here on how to create a simple docker env to use httpbin on you local port.

  • πŸ’Ύ Commit your changes

  • πŸ”€ Start a Pull Request. There are two ways how you can start a pull request:

  1. If you are familiar with the terminal or would like to learn it, here is a great tutorial on how to send a pull request using the terminal.

  2. You can also edit files directly in your browser and open a pull request from there.

  • 🏁 Done Ask in comments for a review :)

Please keep us updated

πŸ’¬β° - We encourage contributors to be respectful to the community and provide an update within a week of claiming a first-timers-only issue. We're happy to keep it assigned to you as long as you need if you update us with a request for more time or help, but if we don't see any activity a week after you claim it we may reassign it to give someone else a chance. Thank you in advance!

If this happens to you, don't sweat it! Grab another open issue.

Is someone else already working on this?

πŸ”—- We encourage contributors to link to the original issue in their pull request so all users can easily see if someone's already started on it.

πŸ‘₯- If someone seems stuck, offer them some help! Otherwise, take a look at some other issues you can help with. Thanks!

πŸ€”β“ Questions?

Leave a comment below!

Weekly Community Check-in #21: "Motivate"

Hello Everyone! πŸŽ‰ βœ‹

We all at Public Lab 🎈 learn, grow, work, brainstorm ideas, contribute together so why not share about our weekly goals and the awesome work we have done at Public Lab with each other, so we can support and collaborate with each other better. The goal of our Community Check-In is for every community member to share something about their work from the past week and about their current week's goal dart. You are also welcome to share fun-fact πŸ˜„, new ideas πŸ’‘, your learning goals. β˜‘οΈ

If you're new here, welcome 🎈 and don't forget to say hi βœ‹ below, we'd love to work with you! If you're looking for new issues, please try some of our first-timers-only issues.
You can find them at https://code.publiclab.org/#r=all πŸ›

We're SO EXCITED to have your help! 🀝

Is there anything, you would like to share with us from last week's work? What is your plan for this week? πŸš€

If you have not planned yet, just leave a Hello! so that we know that you are in sync with us πŸ”ƒ and doing well!

As always, if you're waiting for a review, or if you're stuck, you can request help here, leave a comment on your issue with @publiclab/reviewers mentioned, or ask the community in our Gitter chatroom. πŸ‘

Gitter

Gitter is an active chatroom in our community and we'll be sending weekly reminders about check-ins there. Be sure to sign up there for these updates or just to join the conversation. You can also join us through http://publiclab.org/chat πŸ’¬

This Week's Theme: "Motivate"

A bit of context first. Before I started contributing to PublicLab back in November, I drifted a while between different organizations, trying to find the right one, trying to fit in, trying to do something amazing. I was well acquainted with JS concepts back then as well, but lacked a driving force to keep me going. I would go on hours of formatting the code according to their linting rules, proper indentation, using the latest APIs and double checking anyone of those that might be deprecated, just to be neglected off since I was a newer contributor, and hadn't been around that much, so those repositories, more or less, always had the same people that reviewed, pushed, and merged the PRs. Always.

This would really put me off. I would decide to checkout a new organization the next day, and hopefully make some progress there, with little or no luck, until eventually, I came across an organization that actually had a label for first-timers-only and the welcoming atmosphere seemed too good to be true. I don't know if other organizations do this too now or not, but initially this really got my spirits up, and I pushed some commits. After that I was suggested to complete a fto-candidate, so I did that as well, and immediately moved to PublicLab's Editor, a JS lib, that interested me back then, and still does.

I honestly did not expect any of the humongous support I got along the way. My PRs were reviewed the same day, enabling me to put in as much work as I wanted to, maybe even push my limits, which I enjoyed every second of. Before you know it, I was opening fto issues welcoming newer contributors just like me to the repository! How @jywarren, @gauravano, @sashadev-sky, or anyone else managed to do the brilliant work they did, while welcoming newer contibutors like me, while solving my doubts on Gitter, while providing insightful reviews on my PRs, and so much more, was out of my ability to comprehend, and I was in fact, motivated.

I will always be thankful for the environment PublicLab enabled me to work in, so that I can contribute with the same energy from back when I completed my fto to this day, it's really been an amazing journey.

Go ahead, volunteer!

Fighting my temptation to keep going on with the storytelling, I will get down to the point now. In order to help make PublicLab the welcoming and progressive community it is and has been, I'm volunteering to help open fto for similar folks, looking for a place to start and continue as well. I will also be helping folks across as many repositories, in as many areas as possible, so that they, in the near future, may hopefully repeat the loop.

I would love any and all the help I can get with this, and if you could spare some time to do the same, doesn't matter how long a member you've been, please comment below to volunteer. To summarize, you can open new ftos or fto-candidates, help people (not only first-timers) complete their PRs, clear doubts on Gitter, etc. To further clarify, this will be different from the normal workflow in the fact that the volunteer will be doing these tasks in a greater frequency this week, if at all possible, than they do usually. There will not be any judgement, and you are free to do the above tasks as a volunteer at your own pace or even attend to your own issues whenever you feel like it.

Below are a few ftos and one fto-candidate I managed to spin up today, so if you're reading this, and haven't yet contributed to any of PublicLab's repositories, pick one (comment here and check them out after completion)! Also, since the check-in is in this repo, I thought of doing the same with the ftos.

You can find our list of previous check-ins here. πŸ““

Community Survey

@ebarry has compiled the results of the community survey, which was open from January 14 to March 21, into a comprehensive code community report. Please add your comments here to this thread for what we are inspired to do/change as a result of reading:https://publiclab.org/notes/liz/04-15-2019/report-2019-software-contributors-survey

This is a really unique opportunity to contribute to open source from a greater scope, and a reminder of the greater meaning behind the work all of you have been doing!

Thanks and keep contributing! Contributing to Public Lab means contributing to the Environment!

Previous Check-ins πŸŽ‰

Gaurav Sachdeva (@gauravano) publiclab/plots2#4327
Sidharth Bansal (@SidharthBansal) publiclab/plots2#4369
Cess (@cesswairimu) publiclab/plots2#4476
Harman Jolly (@coderjolly) publiclab/plots2#4548
Rishabh Rawat (@Rishabh570) publiclab/plots2#4607
Sasha Boginsky (@sashadev-sky) publiclab/plots2#4676
Rishabh Kr Bothra (@geekychaser) publiclab/plots2#4711
Shubham Sangamnerkar (@shubhscoder) publiclab/plots2#4757
Siddhant N Trivedi (@sidntrivedi012) publiclab/plots2#4784
Isha Gupta (@IshaGupta18) publiclab/plots2#4844
Gaurav Sachdeva (@gauravano) publiclab/plots2#4879
Harshith Pabbati (@harshithpabbati) publiclab/plots2#4917
Gaurav Sachdeva (@gauravano) publiclab/plots2#5034
Harshith Pabbati (@harshithpabbati) publiclab/image-sequencer#883
Harman Jolly (@coderjolly) publiclab/mapknitter#447
Divya Baid (@divyabaid16) publiclab/PublicLab.Editor#317
Gautami Gupta (@gautamig54) publiclab/leaflet-environmental-layers#164
Sasha Boginsky (@sashadev-sky) publiclab/Leaflet.DistortableImage#215
Sagarpreet Chadha (@sagarpreet-chadha) publiclab/leaflet-blurred-location#198
Harsh Khandeparkar (@harshkhandeparkar) publiclab/spectral-workbench#451
Pranshu Srivastava (@rexagod) #61

Have a great week everyone! πŸŽˆβ€οΈπŸŽ‰

Remove the empty rulesets

Hi, this is a first-timers-only issue. This means we've worked to make it more legible to folks who either haven't contributed to our codebase before, or even folks who haven't contributed to open source before.

If that's you, we're interested in helping you take the first step and can answer questions and help you out as you do. Note that we're especially interested in contributions from people from groups underrepresented in free and open source software!

We know that the process of creating a pull request is the biggest barrier for new contributors. This issue is for you πŸ’

If you have contributed before, consider leaving this one for someone new, and looking through our general help wanted issues. Thanks!

πŸ€” What you will need to know.

Nothing. This issue is meant to welcome you to Open Source :) We are happy to walk you through the process.

Problem

πŸ“‹Solution

  • πŸ™‹ Claim this issue: Comment below. If someone else has claimed it, ask if they've opened a pull request already and if they're stuck -- maybe you can help them solve a problem or move it along!

  • πŸ“ Update
    Remove the Line 30 and 31

    .panels {
    }

    After the errors are fixed, proceed as specified below.

  • πŸ’Ύ Commit your changes

  • πŸ”€ Start a Pull Request. There are two ways how you can start a pull request:

  1. If you are familiar with the terminal or would like to learn it, here is a great tutorial on how to send a pull request using the terminal.

  2. You can also edit files directly in your browser and open a pull request from there.

  • 🏁 Done Ask in comments for a review :)

πŸ€”β“ Questions?

Leave a comment below!

Is someone else already working on this?

We encourage you to link to this issue by mentioning the issue # in your pull request, so we can see if someone's already started on it. If someone seem stuck, offer them some help! Otherwise, take a look at some other issues you can help with. Thanks!

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.