Giter Site home page Giter Site logo

gnab / remark Goto Github PK

View Code? Open in Web Editor NEW
12.7K 205.0 855.0 6.98 MB

A simple, in-browser, markdown-driven slideshow tool.

Home Page: http://remarkjs.com

License: MIT License

Makefile 0.01% HTML 49.74% JavaScript 49.95% Less 0.30%
markdown slideshow html javascript

remark's Introduction

remark

Build Status CDNJS xscode Donate

A simple, in-browser, markdown-driven slideshow tool targeted at people who know their way around HTML and CSS, featuring:

  • Markdown formatting, with smart extensions
  • Presenter mode with markdown formatted speaker notes and cloned slideshow view
  • Syntax highlighting, supporting a range of languages
  • Slide scaling, thus similar appearance on all devices / resolutions
  • Simple markdown templates for customized slides
  • Touch support for smart phones and pads, i.e. swipe to navigate slides

Check out this remark slideshow for a brief introduction.

To render your Markdown-based slideshow on the fly, checkout Remarkise.

Getting Started

It takes only a few, simple steps to get up and running with remark:

  1. Create an HTML file to contain your slideshow (see boilerplate below)
  2. Open the HTML file in a decent browser
  3. Edit the Markdown and/or CSS styles as needed, save and refresh!
  4. Press C to clone a display; then press P to switch to presenter mode. Open help menu with h.

See any of the boilerplate-*.html files (the -local one requires building remark first), or just copy the boilerplate HTML below to start:

<!DOCTYPE html>
<html>
  <head>
    <title>Title</title>
    <meta charset="utf-8">
    <style>
      @import url(https://fonts.googleapis.com/css?family=Yanone+Kaffeesatz);
      @import url(https://fonts.googleapis.com/css?family=Droid+Serif:400,700,400italic);
      @import url(https://fonts.googleapis.com/css?family=Ubuntu+Mono:400,700,400italic);

      body { font-family: 'Droid Serif'; }
      h1, h2, h3 {
        font-family: 'Yanone Kaffeesatz';
        font-weight: normal;
      }
      .remark-code, .remark-inline-code { font-family: 'Ubuntu Mono'; }
    </style>
  </head>
  <body>
    <textarea id="source">

class: center, middle

# Title

---

# Agenda

1. Introduction
2. Deep-dive
3. ...

---

# Introduction

    </textarea>
    <script src="https://remarkjs.com/downloads/remark-latest.min.js">
    </script>
    <script>
      var slideshow = remark.create();
    </script>
  </body>
</html>

How To Use remark

The wiki pages contain all the how-to, templating, and API help.

Real-world remark slideshows

On using remark:

Other interesting stuff:

Printing

Converting to PDF is primarily supported via Chrome's Print to PDF feature. Note that the styling is not exact; See #50 for some recommended CSS to add to your styles.

Alternatively, you can use DeckTape, a PDF exporter for HTML presentation frameworks that provides support for remark.

Contributors

Thanks goes to these people for their contributions:

  • Aaron Meurer
  • Adam Obeng
  • Adam Strzelecki
  • Aleksandar Trifunovic
  • Alexander Brett
  • Alex Claman
  • Alex Y. Wagner
  • Allan Jiang
  • Amin Bandali
  • Andrea Georgieva
  • Andrew Gaul
  • Andrey Ustyuzhanin
  • Antonin Stefanutti
  • Axel Rauschmayer
  • Baron Schwartz
  • Bastian Venthur
  • Bengt Lüers
  • Benjamin Stigsen
  • Bernát Kalló
  • bobappleyard
  • Brandon Keepers
  • Breno Polanski
  • Bruno Fagundez
  • bugdone
  • Cameron Daigle
  • Chris Kanich
  • Christian Dreier
  • Christopher McClellan
  • Christoph Gnip
  • cjwit
  • Claudio Bley
  • Daan van Berkel
  • Daniel Stankiewicz
  • Daniel Wang
  • Danny Tuppeny
  • Dan Steingart
  • datamike
  • Dave Henderson
  • David Richards
  • derickfay
  • Dirk Husemann
  • Erwann Mest
  • Fabian
  • Felix C. Stegerman
  • Florian Rathgeber
  • follower
  • Gerard Capes
  • gnab
  • Grégoire Pineau
  • Gurjeet Singh
  • Hadrien Frank Cardinal de Cuzey
  • Hiroshi Fukada
  • Hubert Chen
  • Hunter-Github
  • hydroid7
  • Ivo Wever
  • J_4lexander
  • Jason
  • Jason Underhill
  • Jérôme Petazzoni
  • Jimmy Merrild Krag
  • Joe Beda
  • Joel Porquet
  • Johannes Wienke
  • Julien Wajsberg
  • kellyoconor
  • kerim
  • kernc
  • Kim Joar Bekkelund
  • Lauro Caetano
  • Loreia
  • Marcel Schilling
  • Markus Schanz
  • Martin
  • Martin 'Hasan' Bramwell
  • Mathias Bynens
  • Matthew
  • Mears-UFL
  • mhor
  • Michael Byrne
  • Michael Grosser
  • Michael Mol
  • Michael Sanford
  • Mike Pennisi
  • Morton Fox
  • mrbald
  • Nicolas Hart
  • Oleksiy Syvokon
  • Ole Petter Bang
  • Ozan K
  • Pavel Boldyrev
  • Pedro
  • Pedro Martin
  • Peter Jausovec
  • petitviolet
  • Pi-Hsun Shih
  • pille1842
  • piranha
  • pospi
  • Psychos-Yi
  • punkish
  • Radovan Bast
  • Rahul Bansal
  • Rasmus Vestergaard Hansen
  • rasmusvhansen
  • Renato Alves
  • rglepe
  • Rich Trott
  • Roberto Soares
  • Robert Perce
  • Robert Szmurło
  • Robin Berjon
  • Rolf
  • Rostyk
  • Russell Keith-Magee
  • Ryan Thomson
  • Sarah Binney
  • Scott Hewitt
  • Sebastian Pipping
  • Sequoia McDowell
  • Shane Curcuru
  • Shaun Hammill
  • siba prasad samal
  • Simon Hengel
  • Stian Mathiassen
  • stu-b-doo
  • Sylvain Abélard
  • Takashi Kanemoto
  • Tej Chajed
  • Thomas Ballinger
  • Tobias Løfgren
  • Todd Brannam
  • Todd Gureckis
  • Tome Tanasovski
  • Tom Kraak
  • Torgeir Thoresen
  • tripu
  • vdepabk2t
  • William Ghelfi
  • Willi Rath
  • Wouter Sioen
  • Yihui Xie
  • Yinhe Zhang
  • Yohan Lasorsa
  • Yoshiya Hinosawa

License

remark is licensed under the MIT license. See LICENSE for further details.

remark's People

Contributors

bast avatar binney avatar dantup avatar darobin avatar dvberkel avatar freakboy3742 avatar gcapes avatar gnab avatar gureckis avatar gurjeet avatar hartwork avatar joel-porquet avatar jonathanlilly avatar kimjoar avatar kt3k avatar mschilli87 avatar nanoant avatar peter50216 avatar peterj avatar pospi avatar roberto avatar ryanrolds avatar schnz avatar sequoia avatar shanecurcuru avatar sol avatar tchajed avatar tobloef avatar torgeir avatar tripu 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  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  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  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  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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

remark's Issues

Implement slide steps

Implement slide steps, as discussed in #54 here.

Typical usage:

var circles = svg.selectAll('circle');

slideshow
  .slide('circlesSlide') // locate slide by name or number
    .step(function () { // add slide step
      circles
        .transition()
        .style('fill', 'red');
    })
    .step(function () {
      circles
        .transition()
        .style('fill', 'green');
    });

Incremental builds

Hi gnab,
Still loving remark. One feature frequently found in javascript slideshow libraries (e.g., deck.js) is the ability to automatically create incremental builds of bullet points in slides (usually showing one bullet at a time and greying out past ones). this is something that is really great to do in code since it takes a long time to manually arrange in Keynote/Powerpoint. I guess this would require a slightly more complex event model where the arrow keys don't always change to the next slide and instead trigger and event within the current slide.

I'm not sure about how to implement this in the Markdown cleanly... I could imagine the default would just be to change the slide class or something so that it is an incremental build slide, but once you get into incremental builds you might want there to be more to it (e.g., maybe you could show a title, then an image appears).

Since it looks like the development of this might be slightly ahead of the github, are there any plans in the works for something like this?

One proposal: '---' indexes new slides. perhaps '--' could index successive builds. So, for example:

# Title appears first
--
Some text should appear next
--
- Bullet 1 appears next
--
- Bullet 2 after bullet 1
--
- Bullet 3 after bullet 2
- Bullet 4 appears with bullet 3 and after bullet 2.


---

# The next slide appears
--
<img src="images/something.png" alt="appears next">

---

# Final slide

Anyway, I'd possibly be interested in helping out with this (assuming I can understand how to extend the event model and slide class).

Best,
T

Integration with jekyll?

I wondered if you'd thought about integrating this with jekyll at all to simplify the markup? I played around with it a bit on my fork, basically just setting up a simple jekyll template, so that the slides can be written in a markdown-only file without the html wrapper (because jekyll can plug that in automatically). Here's my example markup based on your gh-pages template and the rendered result (note: I played around with the formatting a bit just for my own practice).

Obviously you want to keep the general setup so that users don't need jekyll, but I thought it simplified things for use on gh-pages (which is where I'm thinking about using it), so maybe it would be worth adding as an example to your gh-pages branch.

In-slide Impress.js-like viewport zoom and navigation

It would be possible to create a slide property to enable in-slide impress.js-like functionality, i.e.:

checkpoints: (-1 1 3), (1 1 3), (0 0 1)

# Content

Where (x y z) is position and zoom, based on a coordinate system like:

* * * * * * * * * * * * * * * * *
* (-1, 1)                (1, 1) *
*                               *
*             (0, 0)            *
*                               *
* (-1, -1)              (1, -1) *
* * * * * * * * * * * * * * * * *

It would also be possible to add a rotation parameter.

customize key binding (vim stype hjkl to back/forward)

I just finished my first remark.js slides, and
when I go through it via presentation mode,
I realized moving back and forth between p and arrow keys are a little bit annoying.
is it possible to support vim-style key bind like h for backword and l for forward?

Simplistic vs. Simple

I'm not sure you want to describe Remark as "simplistic" meaning "naive" or "oversimplifying complex problems"? I think "simple" would be better.

Improve position indicator visibility

Continuing where #39 left of, it would sometimes be nice being able to style the position indicator on a per-slide basis, since it may be hard to see the indicator on slides with dark backgrounds.

Alternatively, the position indicator could employ some kind of inverted color scheme, i.e. black on white and white on black.

Example slideshow demonstrating a method to display colour ANSI terminal listings in remark

I've just created a slideshow that demonstrates a method for including colour ANSI terminal extracts from command-line tools in remark slideshows.

http://joshbode.github.com/remark/ansi.html

It uses the ANSI HTML Adaptor (aha) to create coloured HTML from terminal output, along with a (slight) hack to post-process the highlight.js engine outputs. The example includes a required additional file terminal.language.js which identifies the <span /> styling tags created by aha.

I put this together as I'm giving a presentation on git at work and wanted to be able to use full-colour examples without having to create screen-shots.

Cheers,
Josh

Built-in slide classes

I could use a little more documentation about the built-in slide classes.

Right now the wiki says these "include left, center, right, top, middle and bottom." Do these just relate to text alignment? Or do they do anything else?

Slide-sized image

In some cases I'd like to show slides which are basically just images, maybe with a credit or title. For these, I'd like the image to be the same size as the slide, and then to have any markdown text appear on top of that image, or perhaps underneath. This isn't so much an issue with the Remark script as a question about how best to write the CSS, or perhaps some Jquery for the HTML to achieve this effect?

Add a fullscreen mode

I was thinking it'd be neat to have a fullscreen mode that could be triggered on keypress, say, something like the "f" key would be cool.

Jumps to slide 1 on refresh

When using remark from the master branch it always jumps to slide 1 when refreshing. Makes it kinda hard to write the slides ;) This is on the latest Chrome on OS X.

You can reproduce it by using the boilerplate setup and use the latest master version of remark. Jump to slide two, then refresh.

command-P to print in Safari also triggers presentation mode

When I am playing a remark slideshow in Safari and hit command-P to print, it sends the slideshow into presentation mode as well as opening the print dialog. remarks seems to be treating command-P as the same as P (unmodified).

(I can use Chrome with remark since the problem isn't there, but I'm hoping to use remark to put slideshows on the web for 100s of students, probably half of whom are using Safari these days, and I can't ask them all to switch browsers....).

Two Blockquotes in a row

Remark seems to have problems with two blockquotes in a row. The second one is not rendered as a blockquote.

> Consuetudium lectorum Mirum est notare. Eodem modo typi qui nunc nobis videntur parum clari fiant sollemnes in futurum? Assum Typi non habent claritatem insitam est usus legentis in iis. 
> Claritatem Investigationes demonstraverunt lectores legere me lius quod ii legunt saepius Claritas est etiam. Nam liber tempor cum soluta. Est etiam processus dynamicus qui. 

This is true whether I insert an extra line between the two or not.

Separate HTML and Markdown

I'm wondering if there is someway to separate the HTML file from the Markdown text? Ideally I'd like to do it with something other than a PHP include (the only way I know how) since I'd using this on a USB drive and can't be sure that PHP is installed on whatever computer I might be using. Is there someway to do this in Javascript?

A bit more explanation: I found Remark because I'm using FoldingText, a Markdown based outlining app for OS X. My goal would be to be able to quickly and easy edit presentations entirely within FoldingText. For this reason it would be nice to have the HTML file separate from the MD/TXT file.

Thanks!

Navigation

I'd like to see some way to navigate to a particular slide - perhaps a button that pulls up a lightbox of the entire slideshow? Or, more simply, the option to go to a particular slide number. Right now I only see the option to navigate by arrowing through each slide one-by-one?

Export to PDF

Is there a "nice" way to export a Remark presentation as a PDF? By nice I mean 1) rendered like the screen output as closely as possible and 2) in vector format i.e. slides not rendered as raster images and concatenated.

It seems reveal.js has a PDF export via a print stylesheet, which unfortunately doesn't work on Linux.

Feature request: image scaling

Non-background images are always shown at their original size, which is often not at all adapted to a slideshow. For locally stored images, preprocessing is a solution, but not for pointing directly to images on other servers. Explicit image scaling would therefore be a nice feature to have.

Problem with sizes of background and other images when printing

I detected some problem in the recently added print feature with sizes of some figures. For example, in the remark presentation in:

https://github.com/stefanv/teaching/tree/master/2013_assp_zurich_numpy/slides

If you try to render it in PDF via the print feature, the size of the images in first and second slide appear in PDF with different factor forms than in the browser (using Google Chrome 29.0.1547.76 on Linux here).

Curiously enough, other figures in the presentation appears with the correct ratio.

Error in code highlighting.

    .python
    FLOW.params['state'] = xsrfutil.generate_token(SECRET_KEY, 'ga-data')
    authorize_url = FLOW.step1_get_authorize_url()
    return redirect(authorize_url) # Flask

will produce.

FLOW<span class="params">'state'</span> = xsrfutil.generate_token(SECRET_KEY, 'ga-data')
authorize_url = FLOW.step1_get_authorize_url()
return redirect(authorize_url) # Flask

remark 0.4.6

Using -- to use the previous slide as a template doesn't include presenter notes

I'm using the technique described here to have bullet points appear one at a time, i.e. using multiple slides and using the previous as a template to simulate a single slide appearing gradually.

But when I am in presenter mode and I go to the second bullet/slide, the presenter notes attached to the first one disappear. So it seems that remark is using the preceding slide as a template, but omitting the preceding slide's presenter notes.

Class left

Hi,

There is an error with the class left :

#slideshow .slide > .left {
    text-align: center;
}

Must be :

#slideshow .slide > .left {
    text-align: left;
}

Wiki Sections for user contributions

It would be nice to have Wiki sections for the following:

  1. CSS examples
  2. HTML templates
  3. Integration with third party apps.

I have a contribution for 3, which is this AppleScript to convert a FoldingText outline into a Remark presentation.

(I'd edit the Wiki myself, but it seems only the developer has permission to do that?)

Markup extension for showing bullets line-by-line

Often, you might want to have bullets appear one by one on a slide. You can approximate that by copying the slide n times. The first copy has bullet 1, the second has bullets 1 and 2, and slide n has all bullets showing.

However, this is inconvenient because if you want to make changes to any of that content, you have n slides to change. As well, you have to manually arrange the slides with the right bullets displaying.

Instead, it would be helpful to have a way to specify that a section of text should appear line-by-line - perhaps a macro that expands to multiple slides as described above. Or do it with JS.

How to change ratio

I already seen the wiki on this subject:
https://github.com/gnab/remark/wiki/Configuration-Options

But can't find the way for changing the ratio anyways. This is supposedly simple...
Here's what I tried:

  1. In the slide inserted a line with ratio: '16:9'
  2. Calling the slideshow with: var slideshow = remark.create({ ration: "16:9" });
  3. Same with: var slideshow = remark.create({ general: { ration: "16:9" } }); just for fun

footnote bug?

Hi,

I found a bug at .footnote[...] syntax.

If I use .footnote[http://google.com], there's a semicolon followed by the url.

like:

google.com;

But it disappeared if I use .footnote[ http://google.com ]or .footnote[http://google.com ] syntax. It seems to be correct if I put an extra space before ].

I love remark very much. Thank you! :)

how to escape ] in code

I find I have issue to use a single ] in remark:

Escape character is '^]'.

Escape character is '^&#93'.

following are always be rendered as

Escape character is '^</div>'.

how to workaround it?

Block-Quotes in remark

Hello,

I'm trying to use the markdown blockquote syntax (i.e. >) in remark and I'm having some trouble. I only seem to be able to get it to work if I explicitly use the <blockquote /> tag.

The syntax works here in GitHub, e.g. the following:

>  This is a blockquote with two paragraphs. Lorem ipsum dolor sit amet,
consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.
Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.

produces this:

This is a blockquote with two paragraphs. Lorem ipsum dolor sit amet,
consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.
Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.

Here is an example in remark where I can't get it to work directly:

    <!DOCTYPE html>
    <html>
      <head>
        <title>Quoting</title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
        <script type="text/javascript" src="https://github.com/downloads/gnab/remark/remark-0.4.2.min.js"></script>
      </head>
      <body>
        <textarea id="source">

    This is a block-quote:

    > "Outside of a dog, a book is man's best friend. Inside of a dog it's too dark to read." - Groucho Marx

    And another:

    <blockquote>
    "If you try and take a cat apart to see how it works, the first thing you have on your hands is a non-working cat." - Douglas Adams
    </blockquote>

        </textarea>
        <div id="slideshow" />
      </body>
    </html>

Cheers,
Josh

Problem in Showdown

If you look at slide 15 in my presentation, there is a problem with Showdown not parsing # overskrift properly when inside a div. This is the code:

<div class="col">
  # overskrift
</div>

which gets parsed into:

<div class="col">
  <p># overskrift</p>
</div>

instead of the expected:

<div class="col">
  <h1>overskrift</h1>
</div>

Showdown however handles lists, urls and other markup inside divs as you can see on the same slide in my presentation.

Add online editor to turn into full-fledged web app

After recently adding a php script to list all the remark presentations in a folder, I thought that it wouldn't be hard to turn Remark into a web-app where one could easily edit the Markdown online as well. I looked around and saw there is an excellent open source HTML5 markdown editor called Dillinger. (See demo here.) That, in turn, is based on Ace, an all-purpose embeddable online code editor. It is easy enough to add Ace to a site, but I'm not sure how to do it in such a way that one could select and edit from a list of existing Remark files, or create a new one. Were one to do this, however, Remark would be a full-fledged web-app which would allow one to edit MD presentations on-the-fly. I'm sure it isn't as simple as it sounds, but it is an idea worth considering…

MathJax support

MathJax doesn't seem to work out of the box. I assume this is because it's making its pass too early, before the slides have been generated. I'm on a deadline right now but maybe I'll come back and fix this later.

slide.title not set on 'slidein' event

I have the following code to trigger when slides are shown:

var remark = remark.create();

remark.on("slidein", function(slide, slideIndex) {
   // slide.title is always ""
});

One of my slides contains name: slidename, but slide.title in my function is always an empty string. Or is there some other way to recognize the slide by name? I don't want to use the slideIndex because that may change.

Highlighting bug

I'm having a problem with fenced code blocks. This

```http
GET /chat HTTP/1.1
Host: server.example.com
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==
Origin: http://localhost:8000
Sec-WebSocket-Version: 13
```

results in

<pre><code class="http objectivec">GET /chat HTTP/<span class="number">1.1</span>
Host: server<span class="variable">.example</span><span class="variable">.com</span>
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==
Origin: http:<span class="comment">//localhost:8000</span>
Sec-WebSocket-Version: <span class="number">13</span></code></pre>

which is not what I expected, especially as Highlight.js says that http is a supported language.

Using remark-0.4.4.min.js

Print a Presentation INCLUDING Speaker Notes

Are there any plans to support printing (= "export to File" from Chrome) with the speaker notes included?

What I'm thinking of is a portrait page format with the slide occupying ~1/3 of the page at the top followed by the notes for this page.

Table syntax

Is that remark recognizes the syntax for the table ?

| Left align | Right align | Center align |
|:-----------|------------:|:------------:|
| left       |       right |    center    |

global markdown link definition

I'm trying to prepare my 1st remark.js presentations now...and what a wonderful html slides tool it is! thanks!

during my preparation I just found one thing: it looks for each slide the URL definition need to repeat , and can't span beyond current slides...

I like [remark][] , it's nice!
[remard]: http://remardjs.com

---

and I use [remark] to write my slides  <-- this doesn't work.

do I miss anything here? or it is just not supported (then it's really a pity).

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.