GithubHelp home page GithubHelp logo

pingyhq / pingy-cli Goto Github PK

View Code? Open in Web Editor NEW
382.0 10.0 15.0 2.13 MB

The Simple Frontend Build Tool. No Configuration, No Plugins.

Home Page: https://pin.gy/cli

License: MIT License

JavaScript 72.62% CSS 1.35% HTML 25.71% CoffeeScript 0.17% Dogescript 0.05% LiveScript 0.02% TypeScript 0.04% Makefile 0.04%
frontend sass build-tool website pingy-cli babel coffeescript pug

pingy-cli's Introduction

Not actively maintained. Caveat Emptor.

I'm not actively maintaining Pingy CLI anymore. I'm happy to look at and merge PRs however if you wish to contribute.

Pingy CLI Join the chat at https://gitter.im/pingy-cli/Lobby

npm Build Status: Linux & Mac Build Status: Windows

The Simple Frontend Build Tool. No Configuration, No Plugins.

Install

npm install @pingy/cli --global

Usage

Usage: pingy [command]

Commands:

  init            Initialise a new or existing website
  dev [options]   Serve local development version of website
  export          Export website to a folder for distribution
  -h, --help      output usage information
  -V, --version   output the version number

init

Usage: pingy init [options]

Initialise a new or existing website using Pingy

Options:

  --yarn          Use Yarn instead of NPM for installing packages
  --global-pingy  Don't install local version of Pingy CLI, use global version instead
  --ask           Ask for all init options (don't prompt to use existing init options)
  -h, --help      output usage information

pingy init will initialise a new or existing website in the current directory. An interactive prompt will ask you a few questions and can then install requested dependencies (e.g. Sass, Less, Babel, CoffeeScript etc..). Optionally, init can also scaffold some boilerplate files for your website.

Pingy is zero-configuration but it does place a .pingy.json file in your website folder to help Pingy identify the root of your website. Currently, this only contains the default folder name exporting files to ('dist'), you can change this if you like.

dev

Usage: pingy dev [options]

Serve local development version of website

Options:

  -h, --help         output usage information
  -p, --port [port]  Use chosen port (otherwise random port will be used)
  -q, --no-open      Don't automatically launch site in web browser

Will create a local development server and open the site in your default web browser. Automatically supports live browser reload, compilation/transpilation (with smart caching) and sourcemaps without any configuration.

Note: If you created your project with pingy init, then Pingy will try to add a run script (if it doesn't already exist) to your package.json. In this case, you can run npm start, instead of pingy dev.

scaffold

Usage: scaffold [options] <alias/url/path>

Scaffold a new website using a third-party project template

<alias/url/path> can be:

  Alias: 'bootstrap' (View alias registry at: https://github.com/pingyhq/scaffolds)
  Git URL: 'https://github.com/pingyhq/pingy-scaffold-bootstrap.git'
  Shorthand GitHub URL: 'pingyhq/bootstrap'
  Filesystem path: '/Users/dave/code/pingy-scaffolds/bootstrap'


Options:

  --yarn          Use Yarn instead of NPM for installing packages
  --global-pingy  Don't install local version of Pingy CLI, use global version instead
  -h, --help      output usage information

export

pingy export will export the website so that it's ready to be uploaded wherever you like. Assets will be minified so that your website is super fast.

Configuring Export

You can edit the .pingy.json file in your website root to change which folder your site will be exported to. You can also add/remove to the exclusions array to exclude files/folder from being exported or compiled.

This is what the default .pingy.json file looks like:

{
  "exportDir": "dist",
  "exclusions": [
    {
      "path": "node_modules",
      "action": "exclude",
      "type": "dir"
    }
  ]
}

This will export your site to a folder named 'dist' within your website's folder. It will also exclude the 'node_modules' folder from your exported build.

Let's try changing our .pingy.json to something a bit different:

{
  "exportDir": "exported-site",
  "exclusions": [
    {
      "path": "bower_components",
      "action": "dontCompile",
      "type": "dir"
    },
    {
      "path": "*.json",
      "action": "exclude",
      "type": "file"
    }
  ]
}

This will export your site to a folder named 'exported-site' within your website's folder. It will exclude any files that have the 'json' extension and it will copy the 'bower_components' folder and internal file but it won't compile any of those files. For example, if Pingy CLI sees a SASS or CoffeeScript file then it won't try to compile it, it also won't try to minify HTML, CSS or JS files within 'bower_components'.

Better documentation for this functionality is coming soon. For the moment, feel free to create an issue if you want more information.

Is there an example repo where I can try out Pingy CLI?

Sure, you can clone the repo for the website. It uses Sass and Babel.

License

(The MIT License)

Copyright (c) 2018 Pingy mailto:[email protected]

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

pingy-cli's People

Contributors

borekb avatar davej avatar filtercake avatar greenkeeperio-bot avatar munter avatar s3b4s avatar ty3uk 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

pingy-cli's Issues

init with existing .pingy.json

I went through pingy init and successfully bootstrapped my project. Then I tried removing node_modules as they won't be committed into Git anyway. I ran pingy init again and my expectation was that it would just run npm install and output some message. However, it started asking all the questions again. How is this supposed to work?

BTW, just discovered Pingy CLI, it's an amazing tool. Thanks for it!

Live reload stops working

I'm not exactly sure what is causing live reload to fail. My current suspicion is it'll stop working after editing the scss files a few times but I'm not entirely sure. I'm using Chrome on Arch. I don't get any console errors. Refreshing the page doesn't work. Emptying cache and hard reload doesn't work. So far the only way to fix it is to restart pingy dev. I've uploaded my project so you can take a look yourselves. Please let me know if you need more info. Thanks!

Document root not being served if it's compiled

Noticed this on windows, not sure if it also applied on Mac.

I.e.. if you request / then index.pug will not be compiled and served. Instead you get a directory listing. If you request Γ¬ndex.html` directly then it works ok.

ES6 imports with babel not working

Using ES6 import statement gives me the following:

Uncaught ReferenceError: require is not defined

The file is something.babel.js and is trying to import test.bable.js using:

import {test} from './test' (also tried import * as test from 'test.bable' etc).

Refresh does not seem to work when editing child partials

Not sure if I broke something or if this is a bug. I have ejs templates and scss setup. When I edit an scss or ejs partial that's included in the main files, the browser does no show the changes. The funky part is, that it doesn't even show the changes after a hard reload until I edit the main files.

Steps to reproduce:

  • Start a new project
  • Make a main.scss file
  • Import a something.scss file in main.scss
  • Edit something.scss and reload the browser

Same goes for ejs templates.

global node-sass

IΒ΄m using sass in all my projects. Can you provide a way to check for the global install and then just link?

custom scaffolds

i wonder what the quickest workaround would be for now to customize the scaffolding of a pug/sass project.

specifically i would want to have...

  • installed `jstransformer-sass' do enable style tags being written in sass
  • a components folder
  • a shared.sass file inside that
  • an example component file with the mentioned sass style tag and example import of shared.sass
  • have that component included in the index.pug

i guess for now i can just make a repo of my boilerplate and clone that... just wondering if there is a better way you would recommend?


ideas for the future:

  • pingy init --scaffold [ username/reponame || github_url ] to pull from github. pingy could read all config as it does in compile mode and skip the user questions.

  • pingy list scaffolds could pull repos via the github API which follow a naming pattern convention like pingy-scaffold-<html_abstraction>-<css_abstraction>-<js_abstraction>-<whatever>-<you>-<want_to_add>.

  • on the other hand, a curated list could be returned on pingy list scaffolds to keep it short and helpful, while something like pingy listall scaffolds could do the mentioned github search...

Support for Reshape

I know this is probably a long shot but support for Reshape would be amazing. It's like Postcss but for HTML.

keep auto-reload on error pages

image

it's cool that pingy inlines errors to the frontend πŸ‘

maybe it would be possible to append the reload-watcher to that, so that it auto-reloads a fixed version too.

Usage examples / documentation for WordPress development?

Would love to use pingy with WordPress development. We have our own gulp setup running on our own vagrant box and the paths/settings for files are quite different than pingys defaults and there's not much documentation available.

Is pingy-cli intended only for HTML/Jade/Pug/ejs, not php/other? I understand "minimal configuration" perspective, but there are scenarios that require some sort of definitions.

How to get started with pingy + WordPress or is it even intended usage case or possible?

Support for PostCSS / CSSNext

It would be great to support either full access to PostCSS or even limited to CSSNext since that's the future of css essentially and eventually most developers will be using that syntax over Sass / Less.

disable minifying html when exporting from pug

Hello. First of all - thanks for the work you've done, pingy really helps me, until I learned gulp well.
I've been trying to find an answer in google for two days but without success: is it possible to turn off html minification while exporting pug files? I have tried to add

		{
		  "path": "*.html",
		  "action": "dontCompile",
		  "type": "file"
		},
		{
		  "path": "dist/*.html",
		  "action": "dontCompile",
		  "type": "file"
		}

(also tried "exclude") and remove minify:true from pingy.json, but nothing works.
As a result, after export it turned out or not the compiled pug or the minified html.
I will be grateful for any hint. thanks!

upd: Well, It is never too late to learn! I realized that I had to change "pretty" parameter to true for . I still do not know where though.

Export error 4058

When I try to export my project IΒ΄ve got error nr 4058.
IΒ΄m running Windows 10, Node.js v6.9.1

pingy-cli-error

{ Error: ENOENT: no such file or directory, open 'C:\Temp\Pingy-test$stdin' at Error (native)
errno: -4058,
code: 'ENOENT',
syscall: 'open',
path: 'C:\Temp\Pingy-test\$stdin' }

Support for JavaScript bundling

It would be awesome if Pingy supported bundling similar to Browserify/Rollup so that ES6 and CommonJS modules could be used (e.g. NPM packages) and still work in-browser.

Pingy Setup Questions - What do they mean?

Why do you ask 'entry point' and 'test script' and what does those do and why are you asking these questions? I'm just starting down the path of webdev and would like to know why this is an important question to know. It may be helpful in the Readme file to give an overview of the questions that you are asking and why X question is important to know for us curious people :)

Export fails due to ejs error

Not sure what's going on. With pingy dev the page works fine, but pingy export fails.

I narrowed it down so I have only an index.ejs and one included partial.

index.ejs:

<!DOCTYPE html>
<html>
  <head>
  <title>jkl</title>
  </head>
  <body>

    <%- include('a', {a: 'a'}) %>

  </body>
</html>

a.ejs:

a: <%= a %>

Here's the whole log:

βœ– Failed export to /Users/sakamies/Desktop/pingytest/dist
{ ReferenceError: /Users/sakamies/Desktop/pingytest/a.ejs:1
 >> 1| a: <%= a %>
    2| 

a is not defined
    at eval (eval at compile (/Users/sakamies/Desktop/pingytest/node_modules/ejs/lib/ejs.js:524:12), <anonymous>:10:26)
    at returnedFn (/Users/sakamies/Desktop/pingytest/node_modules/ejs/lib/ejs.js:555:17)
    at Object.exports.render (/Users/sakamies/Desktop/pingytest/node_modules/ejs/lib/ejs.js:364:37)
    at /Users/sakamies/Desktop/pingytest/node_modules/accord/lib/adapters/ejs/2.x.js:33:31
    at compile (/Users/sakamies/Desktop/pingytest/node_modules/accord/lib/adapters/ejs/2.x.js:64:15)
    at EJS._render (/Users/sakamies/Desktop/pingytest/node_modules/accord/lib/adapters/ejs/2.x.js:31:14)
    at EJS.Adapter.render (/Users/sakamies/Desktop/pingytest/node_modules/accord/lib/adapter_base.js:124:19)
    at continuation.then.source (/Users/sakamies/Desktop/pingytest/node_modules/@pingy/compile/lib/baby-tolk.js:199:17)
    at tryCatchReject (/Users/sakamies/Desktop/pingytest/node_modules/when/lib/makePromise.js:845:30)
    at runContinuation1 (/Users/sakamies/Desktop/pingytest/node_modules/when/lib/makePromise.js:804:4) path: '/Users/sakamies/Desktop/pingytest/a.ejs' }
Macintosh:pingytest sakamies$ 

Compiling HTML from Pug exports the Pug files during `pingy export`

Is it normal to export the *.pug files along side the exported HTML? I attempted to add the pug files to the exclusion rules but that ended up preventing them from being compiled. Is that a bug or is it because I used the wrong options?

Here's what I used in the exclusions key to attempt to exclude *.pug from being copied over during export.
{ "path": "*.pug", "action": "exclude", "type": "file" }
This resulted in the HTML not being built at all.

Effectively, I want the Pug files to compile, but not get copied over into dist. Is that possible? Easy enough to work around right now by simply deleting them from the output but since they're source files, I don't feel that they should be exported in the first place.

Same thing goes for *.scss files (related?)

Minification bug on Windows

pingy export yielded this error:

{ Error: ENOENT: no such file or directory, open 'c:\example\$stdin'
    at Error (native)
  errno: -4058,
  code: 'ENOENT',
  syscall: 'open',
  path: 'c:\\example\\$stdin' }
\ Compiling main.less

When I went to cli-run.js#L77 and removed minify: true, basically reverting 1a19c23, all was fine. Also, pingy dev is completely fine.

Error when import scss file to main scss file.

I'm currently using Pingy for a simple project. I tend to divide scss file into multiple files then import it to a sort of main.scss file, it's easier for maintenance later. But I encounter a problem that when I save in child file, it said error. When I open main.scss file and save, everything worked fine.

Here is the error
screenshot_1

Here is my structure for the styles folder.
screenshot_2

Node & Npm requirements

Hi,

I installed your cli with node v4.6.0 & npm v4.4.4 and the init failed :

pingy init
/home/me/.nvm/versions/node/v4.6.0/lib/node_modules/@pingy/cli/cli-run.js:12
const { inspect } = require('util');
      ^
SyntaxError: Unexpected token {
    at exports.runInThisContext (vm.js:53:16)
    at Module._compile (module.js:373:25)
    at Object.Module._extensions..js (module.js:416:10)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Module.require (module.js:353:17)
    at require (internal/module.js:12:17)
    at run (/home/me/.nvm/versions/node/v4.6.0/lib/node_modules/@pingy/cli/cli.js:14:15)
    at Object.<anonymous> (/home/me/.nvm/versions/node/v4.6.0/lib/node_modules/@pingy/cli/cli.js:26:3)
    at Module._compile (module.js:409:26)

As you can see i'm using nvm, so I tried to install you cli on a more recent node & npm versions, and the init worked well πŸ‘

So I think you should specify the minimum node & npm versions to use your cli to avoid loosing users/developers/customers, some people can stop using it after pingy init failed.

Option to disable .shas.json

Is it possible to avoid putting .shas.json into my dist folder? I always regenerate everything fresh (I run rm -rf dist before pingy export to be sure there are no leftovers).

pingy export fails to update "dist" even there are new changes

Not sure if doing things correctly. This is a sample project: https://github.com/asokani/pingy-test

When I do yarn pingy export, it exports the page correctly. After making some changes inside index.ejs and doint yarn pingy export again, it outputs this:

yarn pingy v0.24.6
$ "/home/main/Projects/pingy-test/node_modules/.bin/pingy" export
0.6.13 (local)
..
βœ” Exporting to /home/main/Projects/pingy-test/dist
Done in 2.45s.

and index.html is not updated.

Error: write after end

Hello

I am experiencing an error after maybe a minute or two of running pingy dev

Serving at http://localhost:65208
events.js:160
      throw er; // Unhandled 'error' event
      ^

Error: write after end
    at ServerResponse.OutgoingMessage.write (_http_outgoing.js:439:15)
    at script (E:\project\node_modules\sendevent\index.js:97:16)
    at Timeout.close (E:\project\node_modules\sendevent\index.js:104:5)
    at ontimeout (timers.js:365:14)
    at tryOnTimeout (timers.js:237:5)
    at Timer.listOnTimeout `(timers.js:207:5)

Any advice?

LESS mapping doesn't work in Chrome DevTools

Steps to reproduce (I'm on Windows 10, tried Chrome 58 and 60):

Create an empty folder, pingy init in it, choose HTML + LESS, let it scaffold everything.

$ pingy init                                                                                                      
0.6.6 (global)                                                                                                    
  ____  _                                                                                                         
 |  _ \(_)_ __   __ _ _   _                                                                                       
 | |_) | | '_ \ / _` | | | |                                                                                      
 |  __/| | | | | (_| | |_| |                                                                                      
 |_|   |_|_| |_|\__, |\__, |                                                                                      
                |___/ |___/                                                                                       
                                                                                                                  
                                                                                                                  
? What document format do you wish to use HTML                                                                    
? What styles format do you wish to use Less                                                                      
? What scripts format do you wish to use JS                                                                       
? Choose the folder name to export compiled files to dist                                                         
This utility will walk you through creating a package.json file.                                                  
It only covers the most common items, and tries to guess sensible defaults.                                       
                                                                                                                  
See `npm help json` for definitive documentation on these fields                                                  
and exactly what they do.                                                                                         
                                                                                                                  
Use `npm install <pkg> --save` afterwards to install a package and                                                
save it as a dependency in the package.json file.                                                                 
                                                                                                                  
Press ^C at any time to quit.                                                                                     
name: (lessmapping)                                                                                               
version: (1.0.0)                                                                                                  
description:                                                                                                      
entry point: (index.js)                                                                                           
test command:                                                                                                     
git repository:                                                                                                   
keywords:                                                                                                         
author:                                                                                                           
license: (ISC)                                                                                                    
About to write to c:\Dev\temp\lessmapping\package.json:                                                           
                                                                                                                  
{                                                                                                                 
  "name": "lessmapping",                                                                                          
  "version": "1.0.0",                                                                                             
  "description": "",                                                                                              
  "main": "index.js",                                                                                             
  "scripts": {                                                                                                    
    "test": "echo \"Error: no test specified\" && exit 1"                                                         
  },                                                                                                              
  "author": "",                                                                                                   
  "license": "ISC"                                                                                                
}                                                                                                                 
                                                                                                                  
                                                                                                                  
Is this ok? (yes)                                                                                                 
√ Pingy scripts added to package.json                                                                             
√ Created .pingy.json                                                                                             
? Do you want Pingy to scaffold the following files for you? Yes                                                  
? The most important question: Tabs or spaces 2 spaces                                                            
√ Site files scaffolded                                                                                           
                                                                                                                  
Ready to install dependencies.                                                                                    
                                                                                                                  
Command that will now be run:                                                                                     
  > npm install --save-dev @pingy/cli less                                                                        
                                                                                                                  
? Run this command now? Yes                                                                                       
[email protected] c:\Dev\temp\lessmapping                                                                         
+-- @pingy/[email protected]                                                                 
>> LONG NPM OUTPUT HERE <<                             
                                                                                                                  
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules\chokidar\node_modules\fsevents):    
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch
":"any"} (current: {"os":"win32","arch":"x64"})                                                                   
npm WARN [email protected] No description                                                                         
npm WARN [email protected] No repository field.                                                                   
√ Dependencies installed                                                                                          

Run pingy dev and open DevTools. LESS mapping works, so far so good!

image

Clicking on styles\main.less, being prompted to add files into workspace:

image

I've done that:

image

But when I go to Elements again, click main.less and edit the color, it's clearly not mapped:

image

Trying to create a mapping:

image

image

But it still doesn't work (is probably not mapped; I don't know how to tell for sure):

image

I've also tried the mapping the other way around but it doesn't work either:

image

Just to make sure, editing the value in the .less file on the disk indeed works:

image

Could the backslashes be the problem? For example, this looks slightly suspicious:

image

Import module

How can I import a npm module with Pingy?
When I try es6 imports or requires I get an error babel require is not defined.
How to deal with that? Do I need webpack for example?

Custom project structure

I'm currently trying to setup a boilerplate project which has a different file structure than what is proposed by pingy init:

β”œβ”€β”€ index.html
β”œβ”€β”¬ scripts
β”‚ └── main.js
β”œβ”€β”¬ styles
  └── main.scss

If my file structure would look like this for example:

β”œβ”€β”€ index.html
β”œβ”€β”¬ js
β”‚ └── main.js
β”œβ”€β”¬ src
  └── main.scss

Would it be possible for me to change the src and dist through .pingy.json?

{
  "js": {
    "src": "src/js",
    "dist": "dist/js"
  },
  "css": {
    "src": "src/scss",
    "dist": "dist/scss"
  }
}

Maybe JS module support

I know this would probably over complicate such a simple and awesome cli. However, it would be cool for example, to dl an npm and require it it my main JS file like webpack.

Browserify the code?

First of all - thanks for a great tool, which will come in handy many times for smaller projects (like landing pages and so on.

But I really wish that you would browserify the code, so I could import React from 'react' for example.

If I'm doing something wrong - it'll be cool to know

TypeError: Cannot set property 'start' of undefined.

Base

  • Node.js version: 7.8.0
  • NPM version: 4.6.1
  • OS: macOS Sierra 10.12.4

Description

Throws βœ– TypeError: Cannot set property 'start' of undefined.
package.json scripts not added.
.pingy.json not created.
Manually created .pingy.json and run node node_modules/@pingy/cli/cli.js dev works fine.
Tried to install globally – same thing.

Steps to reproduce

mkdir my-site
cd my-site
npm i -D @pingy/cli
node node_modules/@pingy/cli/cli.js init

Result

0.6.6 (local)
  ____  _                   
 |  _ \(_)_ __   __ _ _   _ 
 | |_) | | '_ \ / _` | | | |
 |  __/| | | | | (_| | |_| |
 |_|   |_|_| |_|\__, |\__, |
                |___/ |___/ 


? What document format do you wish to use HTML
? What styles format do you wish to use Sass (.sass)
? What scripts format do you wish to use Babel
? Choose the folder name to export compiled files to public
βœ– TypeError: Cannot set property 'start' of undefined
? Do you want Pingy to scaffold the following files for you? Yes
? The most important question: Tabs or spaces Tabs
βœ” Site files scaffolded

Ready to install dependencies.

Command that will now be run:
  > npm install --save-dev @pingy/cli node-sass babel-core babel-preset-env

? Run this command now? Yes
...
βœ” Dependencies installed

Export Error -2

On export I'm getting the following error
Error Screenshot

I'm using standard HTML, Sass and standard JS. I also tried to manually create the dist folder and it was deleted on the following export command. I believe all my npm versions are up-to-date.

Moving between computers

Hello!

I love pingy and have been using it for static sites. However, I just cloned down a project with a .pingy.json file, run pingy dev and it appeared to work, except none of the JS or CSS was being loaded in.

It turns out I was missing some compilers, but nothing told me. I had to redo pingy init making sure I selected the right options again, deny it the chance to make a scaffold and then it detected it needed to install sass.

Anyway I can get it to do this check without running an init?

Autoprefix styles

Great job with Pingy CLI! Super cool.

The only thing I feel like I'm missing is autoprefixing of styles, any way to add that myself? Or plans to add it?

Support for markdown files

I realized a little while ago that Pingy is a lot like Harpjs.
Pingy is more modern of course and has support for Babel and friends, live reload etc.. which is awesome. I'm just wondering if there's any plan for supporting Markdown files, similar to Harp (and most other static site generators).

Pug/Jade source copied to build folder

For me I see no reason or value to copy the source pug/jade files to the build folder and would ultimately remove them if I was throwing the build on a server.

Maybe could be an option that is false by default.

styleguide generator

what I want is something that generates a styleguide – ideally something like postcss-style-guide or mdcss which parses CSS comments.

Before I try stuff out though I wondered if you can recommend something... maybe you tried this out yourself already... and how would you integrate it into a freshly generated pingy project...

thx,
Fabian

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.