Code Monkey home page Code Monkey logo

pagic's Introduction

A static site generator powered by Deno + React

简体中文 | Website | Docs | Config | Demos | Themes | Plugins | Blog

deno pagic discord ci

Features

Easy to configure

  • Convention over configuration
  • Single config file pagic.config.ts
  • Intuitive design

Support md and tsx

  • Render md/tsx to static HTML page
  • Support React Hooks
  • Pre-render to static HTML, run as an SPA once loaded

Themes and plugins

  • Official themes default/docs/blog with dark mode
  • Combine plugins to build process
  • Import third-party themes or plugins through URL

Demos

Get started

Installation

# Install deno https://deno.land/#installation
curl -fsSL https://deno.land/x/install/install.sh | sh
# Install Pagic
deno install --unstable --allow-read --allow-write --allow-net --allow-env --allow-run --name=pagic https://deno.land/x/pagic/mod.ts

Initialize the project

To use pagic to build a static website, the project must include at least one pagic.config.ts config file and one md/tsx page file:

site/
├── pagic.config.ts
└── README.md

You can create the above site project by running the following command:

mkdir site && cd site && echo "export default {};" > pagic.config.ts && echo "# Hello world" > README.md

Run pagic

pagic build --watch --serve

More information

Special thanks

  • StrawBerry Icon: A free and open iconic font library for developer and creator

Backers

Backers

Contributors

Contributors

LICENSE

MIT


Have fun with Pagic!

pagic's People

Contributors

cyril-the-real avatar dependabot[bot] avatar doodlewind avatar drizzlesconsin avatar hackjutsu avatar hylerrix avatar justjavac avatar mrxiaozhuox avatar mvemcjsunpe avatar rainzee avatar revelt avatar shenfq avatar svennergr avatar tpim avatar uki00a avatar xcatliu avatar yardenshoham avatar ziqiq 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

pagic's Issues

类名、资源路径错误导致侧边栏 icon 不显示

Describe the bug

当我按照 官方示例 配置侧边栏,本地预览时 icon 显示不出来,查看控制台显示资源 404,并且 HTML 标签类名和 svg 路径前、后缀重复:

image

请问这是因为 pagic 的版本更新了还是其他原因引起的?因为我看您的 blog 仓库中也是像官方文档中一样配置的,所以特来请教一下。

当我把 nav 的设置中前缀和后缀去掉,显示就正常了:

[
    {
        text: '首页',
        link: '/',
        icon: 'home',
    },
    {
        text: '分类',
        link: '/categories/',
        icon: 'category',
    },
    {
        text: '标签',
        link: '/tags/',
        icon: 'tag',
    },
    {
        text: '关于',
        link: '/about/',
        icon: 'about',
    },
    {
        text: '归档',
        link: '/archives/',
        icon: 'box',
    },
    {
        text: '友情链接',
        link: '/links/',
        icon: 'link',
    },
],

Allow arbitrary links in sidebar

Hi there! I'm trying to add a new item in the sidebar that points to some location (a local file, but it could be an external url as well).

Something like:

            {
              text: 'Download file',
              link: 'dir/file.zip'
            }

I get the error during build:

[Pagic] Plugin sidebar start
error: Uncaught (in promise) TypeError: Cannot read property 'outputPath' of undefined
      item.link = pagic.pagePropsMap[item.link].outputPath;

Describe the solution you'd like

I understand the current implementation might be limited to reference local pages only. But I would like to be able to add any arbitrary links in the sidebar. So in my case I would see a new line in the sidebar:

Download file

which would point to dir/file.zip.

Thanks for your tool. It's very handy and easy to use.

按照官网首页给的三行命令,启动项目了,但是乱码

# 安装 pagic
deno install --unstable --allow-read --allow-write --allow-net --name=pagic https://deno.land/x/pagic/mod.ts

# 创建 pagic.config.ts  README.md
mkdir site && cd site && echo "export default {};" > pagic.config.ts && echo "# Hello world" > README.md

# 运行 pagic
pagic build --watch --serve

readme 勘误

将pagic当做module来用的内容描述上

  1. 两份代码里的require都写成了 requrie

  2. 第一部分代码有误

const Pagic = requrie('pagic').Pagic;

const pagic = new Pagic({
  srcDir: 'src',
  distDir: 'public',
});

pagic();

看了源码,如果用的是Pagic类,执行需要调用 pagic.build() ,new Pagic本身只是返回pagic实例,实例不是function,直接运行此实例代码会报错……

另外问下,将watch抽离出module,那watch只能是全局模块使用了耶,不考虑放回去了么?

pagic.config.tsx error, but pagic.config.ts worked well

Describe the bug

According to pagic.config.tsx in TypeScript Tutorial repo, I changed my pagic.config.ts file into pagic.config.tsx, but got this error message:

Warning: Invalid value for prop `href` on <a> tag. Either remove it from the element, or pass a string or number value to keep it in the DOM. For details, see https://fb.me/react-attribute-behavior
    in a
    in li
    in ul
    in nav
    in header
    in Header
    in body
    in html
    in Layout
error: Uncaught Error: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object.
    at ReactDOMServerRenderer.render (https://dev.jspm.io/npm:[email protected]/cjs/react-dom-server.browser.development.dew.js:3635:23)
    at ReactDOMServerRenderer.read (https://dev.jspm.io/npm:[email protected]/cjs/react-dom-server.browser.development.dew.js:3286:35)
    at Object.renderToString (https://dev.jspm.io/npm:[email protected]/cjs/react-dom-server.browser.development.dew.js:3869:33)
    at write (write.tsx:17:37)
    at Pagic.runPlugins (Pagic.ts:307:13)
    at async Pagic.rebuild (Pagic.ts:193:5)
    at async Pagic.build (Pagic.ts:130:5)

To Reproduce

https://github.com/hylerrix/deno-tutorial/blob/master/pagic.config.ts

deno run --unstable --allow-read --allow-write --allow-net --allow-env https://deno.land/x/[email protected]/mod.ts build --serve --watch

Expected behavior

Expected to be run well.

Screenshots

Context

  • Pagic version: 0.7.28
  • Deno version: 1.1.3
  • Browser version (optional):
  • OS version: MacOS Catalina 10.15.5 Beta (19F83c)

Others

Performance of 100k+ page sites with Hugo vs. Pagic?

@xcatliu I love the direction Pagic is going - great work, especially md/tsx generation (which means that MDX might not be far behind!).

I was curious about the largest site(s) you've tried building with Pagic. Our Hugo site generates over 100k pages of *.html files and I'd love to consider moving parts or all of our sites to Deno-based Pagic if you think Pagic is ready for 100k+ page sites.

Thoughts?

还是会复制其他文件的问题

当存在子目录的情况下,copyOtherFiles中glob.sync需要带上nodir配置,否则,子目录的md和_layout.js会因为拷贝目录而被带入。

function copyOtherFiles(srcDir, distDir) {
  const otherFiles = glob.sync('**/*', {
    ignore: [
      '**/*.md',
      '**/_*',
    ],
    nodir:true,//查了一下glob有这个避开目录的配置
    cwd: srcDir,
  });

  otherFiles.forEach(filePath => {
    const fileResolvedPath = path.resolve(srcDir, filePath);
    const distPath = path.resolve(distDir, filePath);

    fse.copySync(fileResolvedPath, distPath);

    console.log(`Generated ${distPath}`);
  });
}

运行时用缓存加速,--watch 优化等 Bug

引用一下 js-history-cn 下的用户体验问题 jshistory-cn/pull/18#issuecomment-699835007,提出了如下需求:

  • 直接点击链接无法正确跳转参考文献、脚注、术语表等 anchor,除非 cmd+click 新开页面。现在的 GitHub 默认版有加了 anchor.js,也可能是路由的问题?
  • 可以正常 pagic build --serve,但 pagic build --serve --watch 报错(见下)
  • 为什么纯静态站点还会依赖 React 全家桶呢?测试了不带图片纯静态的 Part-3,它的请求数量从线上的 4 个增加到了 72 个,实在有些夸张了
  • build 时似乎没有缓存?没有用过 VuePress,不过看日志每次 build 都有很多 download 操作,比 hexo 还是慢了很多。这属于 Deno 的设计哲学吗?

看看方便解决嘛?计划在哪个版本里解决呢?祝 Pagic 更好!🤡

Context

  • Pagic version: 0.9.1
  • Deno version: 1.3.3
  • Browser version (optional):
  • OS version: macOs 11

Uncaught Http: error sending request for url: pillarjs...

在给 deno-tutorail 安装 pagic 的过程中,遇到了如下报错。这可能不是 pagic 的问题,但是我代理也开了,浏览器直接访问 https://raw.githubusercontent.com/pillarjs/path-to-regexp/v6.1.0/src/index.ts 也能获取内容,为什么会报错捏?

所以提问在这里,看看大佬们有啥好的建议没~

$ deno install --unstable --allow-read --allow-write --allow-net https://deno.land/x/pagic/mod.ts

Download https://deno.land/x/pagic/mod.ts
Compile https://deno.land/x/pagic/mod.ts
Download https://deno.land/x/pagic/src/Pagic.ts
...
Download https://deno.land/x/[email protected]/mod.ts
Download https://raw.githubusercontent.com/pillarjs/path-to-regexp/v6.1.0/src/index.ts
error: Uncaught Http: error sending request for url (https://raw.githubusercontent.com/pillarjs/path-to-regexp/v6.1.0/src/index.ts): error trying to connect: tcp connect error: Connection refused (os error 61)
    at unwrapResponse ($deno$/ops/dispatch_json.ts:43:11)
    at Object.sendAsync ($deno$/ops/dispatch_json.ts:98:10)
    at async processImports ($deno$/compiler.ts:736:23)
    at async processImports ($deno$/compiler.ts:753:7)
    at async processImports ($deno$/compiler.ts:753:7)
    at async processImports ($deno$/compiler.ts:753:7)
    at async processImports ($deno$/compiler.ts:753:7)
    at async processImports ($deno$/compiler.ts:753:7)
    at async processImports ($deno$/compiler.ts:753:7)
    at async processImports ($deno$/compiler.ts:753:7)

根据我目前的水平进行了 curl 测试,报错如下:

curl -fsSL https://raw.githubusercontent.com/pillarjs/path-to-regexp/v6.1.0/src/index.ts
curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused

目前还没搜到相关解决方案..


加了 hosts 成功了 🤡 hosts 199.232.68.133 raw.githubusercontent.com

deno install 好像无法安装了

Describe the bug

deno install --unstable --allow-read --allow-write --allow-net https://deno.land/x/pagic/mod.ts

无法安装。

To Reproduce

  • 直接安装
❯ deno install --unstable --allow-read --allow-write --allow-net https://deno.land/x/pagic/mod.ts
Download https://deno.land/x/pagic/mod.ts
Warning Implicitly using latest version (v0.8.2) for https://deno.land/x/pagic/mod.ts
Download https://deno.land/x/[email protected]/mod.ts
error: Import 'https://deno.land/x/[email protected]/mod.ts' failed: 404 Not Found
  • 手动安装之前版本
❯  deno install --unstable --allow-read --allow-write --allow-net https://deno.land/x/[email protected]/mod.ts
.....
error: Import 'https://deno.land/x/types/react/v16.13.1/react.d.ts' failed: 404 Not Found
  • 直接访问0.82,也无法访问。

Context

  • Pagic version: v0.8.2
  • Deno version: deno 1.2.2
  • Browser version (optional):
  • OS version: macOs 10.15.5

感觉很不错想试试看呀!

Multi-level navigation support

Is your feature request related to a problem? Please describe.

Pagic now supports Level 1 navigation, But I want Secondary navigation support.

Describe the solution you'd like

Something like this...?:

sidebar: [
    'README.md',
    {
      link: 'articles/basic/README.md',
      children: [
        {
          link: 'articles/basic/chapter01/README.md',
          children: [
            'articles/basic/chapter01/install-and-hello-world.md',
          ]
        }
      ]
    },
]

Confusing error messages

If users run pagic init <dir> against an empty directory, they will get a "<dir> is not empty" error message. This is confusing because the directory is empty...

mkdir rogueOne
pagic init rogueOne

# failed with message "rogueOne is not empty"

Maybe a better message would be "<dir> already exists" in this scenario.

Feature Request: Support yaml front matter

Would be really nice if this supported yaml front matter[1], when present passed as first parameter instead of title... This would allow for more dynamic options as well as some additional configurability (like not processing an item when the "published" date is in the future.

index.md

---
title: My Title
published: 2017-02-28
--- 
# {title}

My Content

_layout.js

module.exports = function ({ frontMatter, content, relativeToRoot }) {
  return `
    <!doctype html>
    <html>
      <head>
        <title>${frontMatter.title}</title>
        <link rel="stylesheet" href="${relativeToRoot}/css/site.css" />
      </head>
      <body>
        ${content}
        <footer>
          published: ${frontMatter.published}
        </footer>
      </body>
    </html>
  `
};

[1] http://assemble.io/docs/YAML-front-matter.html

安装pagic报错

Powershell环境下,Deno安装成功了,开始安装pagic后报错,报错如下图片
图片

麻烦帮忙看下是什么原因?

[Develop Theme] How to theme debugging on development

Is your feature request related to a problem? Please describe.

error: Uncaught (in promise) TypeError: Import 'https://deno.land/x/[email protected]/src/pagic_theme_custom/mod.ts' failed: 404 Not Found

Describe the solution you'd like
请问可以支持这样引用主题吗?
https://github.com/xcatliu/pagic/blob/8df4be35ea/src/Pagic.ts#L30

theme: "../pagic_theme_custom",

Describe alternatives you've considered
还是目前只能基于 Pagic 源码进行开发调试。

Additional context

/** Import theme or themeFile */
export async function importTheme(theme: string, themeFile?: string) {
if (/^https?:\/\//.test(theme)) {
return await importDefault<PagicThemeConfig>(themeFile ? theme.replace(/\/[^\/]+$/, `/${themeFile}`) : theme);
} else {
return await importPagicModDefault<PagicThemeConfig>(`src/themes/${theme}/${themeFile ?? 'mod.ts'}`);
}
}

Please tell me migration procedure about sidebar (Breaking Change)

Describe the bug
Can you give me an example of the migration procedure for the sidebar?
Sorry, I tried looking at the code to understand how to set it up, but I didn't understand.

error: Uncaught TypeError: sidebarConfig.map is not a function
  return sidebarConfig.map((sidebarConfigItem) => {
                       ^
    at parseSidebarConfig (sidebar.tsx:54:24)
    at Object.fn (sidebar.tsx:35:31)
    at Pagic.runPlugins (Pagic.ts:301:20)
    at async Pagic.rebuild (Pagic.ts:149:5)
    at async Pagic.build (Pagic.ts:133:5)

To Reproduce
When pagic build at https://github.com/yoshixmk/profile, this error occurs.
Here is Detail Log by Github Action.

Expected behavior

  • How to migration.
  • Be able to build.

Context

  • Pagic version: v0.8.6
  • Deno version: 1.2.3
  • Browser version (optional): (no effect)
  • OS version: (no effect)

Double math for latex snippet appears, with the second math not rendered correctly

Describe the bug
When I write a latex snippet in a markdown file, it is rendered TWO times, with the second rendering not rendered correctly.

To Reproduce
Any math in a markdown file will have the problem:
index.md:
$$x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}$$

Expected behavior
The math should be rendered once correctly.

Screenshots
pagic

I think it could be solved by adding a katex.min.css to "src/theme/default/assets", which will hide the mathml code and correctly style the html output, and then modifying "src/theme/default/_layout.tsx" to include katex.min.css. However, this would not correctly render math for users with their own custom _layout.tsx.

Context

  • Pagic version: v0.10.0
  • Deno version: v1.4.5
  • Browser version (optional): 81.0
  • OS version: Windows 10 Home 64-bit (10.0, Build 19041)

file name starting with an underscore, leads to a compile bug

Describe the bug

[Pagic] Plugin sidebar start
error: Uncaught TypeError: Cannot read property 'title' of undefined
        title: pagic.pagePropsMap[sidebarConfigItem].title,
                                                     ^
    at https://deno.land/x/[email protected]/src/plugins/sidebar.tsx:62:54
    at Array.map (<anonymous>)
    at parseSidebarConfig (https://deno.land/x/[email protected]/src/plugins/sidebar.tsx:59:24)
    at Object.fn (https://deno.land/x/[email protected]/src/plugins/sidebar.tsx:42:33)
    at Pagic.runPlugins (https://deno.land/x/[email protected]/src/Pagic.ts:374:20)
    at async Pagic.rebuild (https://deno.land/x/[email protected]/src/Pagic.ts:227:5)
    at async Pagic.build (https://deno.land/x/[email protected]/src/Pagic.ts:204:5)

To Reproduce
Steps to reproduce the behavior:

  • Name a file starting with an underscore, such as _hello.md, can not compile success.

Screenshots
If applicable, add screenshots to help explain your problem.

Context

  • Pagic version: v0.10.3
  • Deno version: v1.4.6
  • Browser version (optional):
  • OS version: macOS Big Sur v11(beta, 20A5395g)

Invalid Link Anchor

We're trying to migrate cn.history.js.org with Pagic, generally speaking it works great :) Here's the major issue related with hyperlink (since link is heavily used in our project):

Describe the bug
Link between pages can't be correctly anchored via direct click.

To Reproduce
Generate the site with following README.md:

# Hello world

<!-- Valid -->
<a href="./test.html#foo">Go to test#foo</a>

<!-- Invalid -->
<a href="./test.md#foo">Go to test#foo</a>

<!-- Not working with direct click, only works with cmd+click -->
[Go to test/#10](./test.md#10)

And test.md:

# Test

<a id="foo">foo</a>

## 1
## 2
## 3
## 4
## 5
## 6
## 7
## 8
## 9
## 10

Then just test clicking the links in README.

Expected behavior
All 3 links should be correctly anchored.

Context

  • Pagic version: 0.9.1
  • Deno version: 1.3.3
  • Browser version (optional):
  • OS version: macOS 10.15.6

配置工具`editOnGithub`默认指向master分支,希望兼容main分支

Describe the bug
我新建了一个Pagic工程,但配置功能有些问题,参考自配置

export default {
  tools: {
    editOnGithub: true,
    backToTop: true
  }
};

其中editOnGithub设置为true,点击回跳转自master分支,但您可能知道,现在github上新建项目主分支为main而不是master,希望能够修复,或提供配置项以兼容旧项目。谢谢。

To Reproduce
Steps to reproduce the behavior:

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Context

  • Pagic version:
  • Deno version:
  • Browser version (optional):
  • OS version:

感觉中文开发者给项目加上中文 readme 会更好

有以下几点原因:

  • 开发者母语是中文,用中文写文档最熟悉,表达也能更言简意赅
  • 项目的国际化是个独立的软件过程,开源项目的国际化可以求助贡献者,对英文文档,在 readme 开头放上其他语言 readme 的链接即可
  • 对于同母语的新访问者,上手、参与项目更快更方便。

Let's add unit tests! 💣🐛💥

@xcatliu for unit tests here, if you had a magic wand and could create all missing unit tests in one swoop — what would be your preferred platform (Deno/Node) and your preferred test runner (Deno.test/Jest/Mocha/node-tap/etc) and your preferred unit test assertion style (expect, should or simply Deno's)?

Let's start with defining a wishlist spec for tests.

Native Deno.test would be hardcore for this project imho...

What do you think?

Use standard Deno approach to grab themes and other assets using `mod.ts` model

Is your feature request related to a problem? Please describe.
Not a problem, but a recommendation to use standard Deno approach to grab themes and other assets using mod.ts and deps.ts models.

Describe the solution you'd like
In the documentation it says:

files lists all the files of the theme, they will be "copied" to the user's project directory.

Why is it designed like this? Why can't it traverse all the files in the theme directory automatically?

Because Pagic needs to support an URL to configure the theme, and only one URL cannot traverse to which files are in the path. Just imagine how you can traverse https://raw.githubusercontent.com/xcatliu/pagic_theme_custom/master?

The way Deno allows a single URL to load multiple files is using mod.ts and exports. I suspect we can do something like that as well, but I wasn't sure how to all file types beyond *.js and *.ts. It's worth thinking about, though, to ease theme builders' burdens.

Describe alternatives you've considered
Use the documented method.

Additional context
Just trying to see if we can use as much Deno-like modules and Go-like modules.

can't install because x/types was removed

Describe the bug

When installing pagic I get this error:

error: Import 'https://deno.land/x/types/react/v16.13.1/react.d.ts' failed: 404 Not Found

This is because deno.land/x/types was removed from deno.land/x. You can import react.d.ts from https://denopkg.com/Soremwar/deno_types/react/v16.13.1/react.d.ts.

To Reproduce
deno install --unstable --allow-read --allow-write --allow-net https://deno.land/x/[email protected]/mod.ts

Expected behavior

pagic installs without errors.

Context

  • Pagic version: v0.8.2
  • Deno version: 1.2.2
  • OS version: macOS 1.16 dev beta 2

Pagic.org public website "flashes" and then disappears

Describe the bug
Go to pagic.org to see the main website - on Windows 10 Pro 2004 Chrome and Edge Chromium, the site flashes and then disappears (seems the main DOM elememtn is fully hidden).

To Reproduce
Go to pagic.org to see the main website

Expected behavior
Should see the website :-)

Screenshots
N/A

Context

  • Pagic version: ?
  • Deno version: ?
  • Browser version (optional): Chrome and Edge Chromium (tried both, same behavior)
  • OS version: Windows 10 Pro 2004

How do I create an index.html to lists all the other pages

I want to create a landing index.html page, so I create an index.md file.
Within it, I want to have a list of links to the other html files.
I'm willing to do this in JavaScript.
Can we have a variable and gets injected which is the list of the other html files?

Perhaps the easiest thing to do is to pass in the a list of files, in a hierarchy, starting with the public root folder.

Clicking a file link in sidebar makes the main content disappear

Describe the bug
Clicking a link to the file in sidebar makes the page unresponsive (there is a spinner that never disappears). This feature was added in #71

To Reproduce
In pagic.config.tsx add a new entry in the sidebar config:

            {
              text: 'Download',
              link: 'classes.db'
            }

where classes.db is a local file. Deploy the site and click the Download link. The browsers starts downloading the file and at the same time the main content is replaced with a spinner that never goes away. All links become unresponsive.

Expected behavior
Clicking Download link starts file downloading. The rest of the site is not affected.

Screenshots
pagic bug

It can be seen live here: https://sannybuilder.github.io/classes/

Context

  • Pagic version: 1.1.0
  • Deno version: 1.6.1
  • Browser version (optional):
  • OS version: Windows 10

deno 1.0.4 throw error: thread 'main' panicked at 'already borrowed: BorrowMutError'

$ curl -fsSL https://deno.land/x/install/install.sh | sh -s v1.0.4
$ deno run --unstable --allow-read --allow-write --allow-net mod.ts build --serve --watch

Clean public
thread 'main' panicked at 'already borrowed: BorrowMutError', /rustc/4fb7144ed159f94491249e86d5bbd033b5d60550/src/libcore/cell.rs:878:9
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
fatal runtime error: failed to initiate panic, error 5
[1]    9157 abort      npm start

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.