Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 01.06.2018, 20:42
Профессор
Отправить личное сообщение для Audaxviator Посмотреть профиль Найти все сообщения от Audaxviator
 
Регистрация: 28.04.2017
Сообщений: 214

Видимо, чего-то не понимаете.
Платформа Node.js - это такая опен-сорс "экосистема", для которой любой придурок (даже такой как я) может напейсать пакет с какими-нибудь функциями и выложить его в общедоступный репозиторий NPM. Ну и есть программка-менеджер, с помощью которой любой ещё больший придурок может воспользоваться любым пакетом из репозитория - вся "экосистема" в его распоряжении.
Вот и вся несложная механика.
Ответить с цитированием
  #12 (permalink)  
Старый 01.06.2018, 21:04
Аватар для madeas
Профессор
Отправить личное сообщение для madeas Посмотреть профиль Найти все сообщения от madeas
 
Регистрация: 13.04.2018
Сообщений: 232

Audaxviator,
спасибо))) видимо я третий "тип", которому как раз и надо написать пакет функций и выложить его в npm, но не могу))

Можете тогда объяснить что это https://www.npmjs.com/package/animate.css ? Это ведь не css файл, а пакет с ним, или для него.
Я вот как раз пытаюсь создать аналог с адресом https://www.npmjs.com/package/box-shadows.css, только для своего репозитория, который я смогу обновлять, а другие качать себе.
Ответить с цитированием
  #13 (permalink)  
Старый 01.06.2018, 21:20
Профессор
Отправить личное сообщение для Audaxviator Посмотреть профиль Найти все сообщения от Audaxviator
 
Регистрация: 28.04.2017
Сообщений: 214

Да откуда я знаю, чего это? Какой-то css, и как-то его использование завязано на javascript, но в любом случае - на фронт-энде. Это вам специалисты по фронтенд-сборщикам легко объяснят.
Ответить с цитированием
  #14 (permalink)  
Старый 01.06.2018, 21:25
Аватар для EmperioAf
Профессор
Отправить личное сообщение для EmperioAf Посмотреть профиль Найти все сообщения от EmperioAf
 
Регистрация: 15.01.2015
Сообщений: 622

Если вы пройдете на гитхаб этого проекта animate.css, то увидите следующий package.json

{
  "name": "animate.css",
  "version": "3.6.1",
  "main": "animate.css",
  "repository": {
    "type": "git",
    "url": "https://github.com/daneden/animate.css.git"
  },
  "author": {
    "name": "Daniel Eden"
  },
  "homepage": "http://daneden.me/animate",
  "license": "MIT",
  "style": "./animate.css",
  "jspm": {
    "main": "animate.css!",
    "format": "global",
    "directories": {
      "lib": "./"
    }
  },
  "devDependencies": {
    "autoprefixer": "^7.1.6",
    "cssnano": "^3.5.1",
    "eslint": "^4.11.0",
    "gulp": "^3.9.1",
    "gulp-concat": "^2.6.0",
    "gulp-header": "^1.7.1",
    "gulp-postcss": "^7.0.0",
    "gulp-rename": "^1.2.2",
    "gulp-util": "^3.0.7",
    "husky": "^0.14.3",
    "lint-staged": "^6.0.0",
    "prettier": "^1.9.1",
    "run-sequence": "^2.2.0"
  },
  "lint-staged": {
    "*.{js,json,md,css}": ["prettier --write", "git add"]
  },
  "prettier": {
    "bracketSpacing": false,
    "proseWrap": "never",
    "singleQuote": true,
    "trailingComma": "all"
  },
  "scripts": {
    "start": "gulp",
    "prettier": "prettier --write \"**/*.{js,json,md,css}\"",
    "precommit": "lint-staged"
  },
  "spm": {
    "main": "./animate.css"
  }
}


Если коротко отвечать на ваш вопрос, то в вашем проекте box-shadow.css надо создать package.json, делается это обычно командой npm init. В package.json имя проекта(name) это, то с каким именем он будет паблишиться, если имя занято, то вы не сможете запаблишить пакет с таким именем.
После того как у вас создан package.json вы можете написать npm publish после чего проекта выложиться в том registry, который у вас в конфиге прописан, по умолчанию это https://registry.npmjs.org/, но вам ничего не мешает поднять свой собственный локальный registry npm и туда паблишить свои проекты(это может быть полезно при совместной разработке, т.к. те у кого в конфиге ваш registry не прописан не смогут с него ничего забирать).
Отвлекся.

Мой комментарий на тему, того, что код предполагает у вас наличие сборщика касался конкретно куска
require('box-shadow/box-shadow.min.css');

В связи с тем, что node js из css конечно ничего не заимпортирует, а просто ругнется и упадет.
Я вот не очень пока понимаю как вы собираетесь на сайт с репозитория выкладывать свой css.
У вас сервер написан на nodejs? Вы собираетесь прописывать пути для статики сервера в папку ./node_modules/box-shadow?
Зачем вам это все?
Сборщик я упомянул, потому, что сборщики умеет бандлить решения, например webpack умеет склеивать отдельные файлы, которые вы эскпортировали в вашем коде для frontend приложения в отдельный файл вида bundle.css.
Ответить с цитированием
  #15 (permalink)  
Старый 01.06.2018, 21:39
Аватар для EmperioAf
Профессор
Отправить личное сообщение для EmperioAf Посмотреть профиль Найти все сообщения от EmperioAf
 
Регистрация: 15.01.2015
Сообщений: 622

В общем ответьте какую вы проблему решаете.

Если вы хотите чтобы у вас на сайте подключился этот css, то вам никакой npm и nodejs не нужен от слова вообще, вы можете на страницах вашего сайта добавить тэг:

<link rel="stylesheet" type="text/css" href="https://raw.githubusercontent.com/madeas/box-shadows.css/1.0.2/box-shadows.min.css">


И у вас "подключится" ваш файл, ну или для надежности разместить этот файл поближе к серверу, что у вас кстати за сервер, вы не написали, обычно наружу торчит apache или nginx, просто положите ваш css куда вы обычно кладете статичные файлы, что-то типа /var/www/public/css. Ну а потом у тэга что я выше написал, href поменяйте на css/box-shadows.min.css

Последний раз редактировалось EmperioAf, 01.06.2018 в 21:47.
Ответить с цитированием
  #16 (permalink)  
Старый 01.06.2018, 22:26
Аватар для madeas
Профессор
Отправить личное сообщение для madeas Посмотреть профиль Найти все сообщения от madeas
 
Регистрация: 13.04.2018
Сообщений: 232

EmperioAf, спасибо за пояснения. Понял, что затея того не стоит, хотя новые знания, уверен, пригодятся. Продолжу изучать работу нода потихоньку.

Что касается ссылки, то рав'у я не очень доверяю, поскольку нигде не видел ссылки на него, в отличие от cdnjs или jsdelivr. Я бы с радостью подключил проект на какой-нибудь cdn, чтобы пользователи могли не скачивать коллекцию, а ставить просто ссылку на cdn, но, у того же jsdelivr, нужны node.js и npm ))). Думал еще про яндекс, но сомневаюсь, что иностранные пользователи будут им пользоваться...
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
help !!! Ошибка npm install bignum Dimasw Node.JS 1 23.05.2016 13:50
Node.js + oracle ANDRUkomod AJAX и COMET 2 05.02.2014 20:52
nodejs и mongodb не устанавливается через npm satan AJAX и COMET 1 17.06.2013 11:39
Проблемы при установке модулей node.js tadjik1 AJAX и COMET 1 18.03.2012 02:20
установка модулей на Node.js simple AJAX и COMET 5 31.10.2011 01:45