Pilas Bloques es una aplicación para enseñar y aprender a programar, desarrollada especialmente para el aula. Se proponen desafíos con diversos niveles de dificultad para acercar a las y los estudiantes al mundo de la programación por medio de bloques. Para más información, ver el Acerca De de Pilas Bloques.
¡En la guia de CONTRIBUTING tenés toda la informacion necesaria para contribuir al proyecto!
git clone https://github.com/Program-AR/pilas-bloques-app.git
Node. La version requerida para el proyecto está en el archivo .nvmrc
.
Debian/Ubuntu:
git clone https://github.com/nvm-sh/nvm.git ~/.nvm
source ~/.nvm/nvm.sh
source ~/.nvm/install.sh
nvm install .
Instalar dependencias
nvm use
npm install
Crear un archivo .env
con las variables de entorno requeridas. El archivo sample.env
puede copiarse para tal efecto.
La aplicación fue desarrollada con Create React App, y luego realizado el "eject". Estos scripts siguen siendo los de CRA:
npm test
- Corre los tests para desarrollo.npm start
- Levanta la aplicación para desarrollo.npm run build
- Prepara la aplicación para producción (minifica, etc.).Otros:
npm run start:electron
- Empaqueta la aplicación con Electron y la ejecuta (para desarrollo)npm run start:emberDev
- Levanta la aplicación compilando Ember en una carpeta paralela. Para ser usada cuando se desarrolla en esa subaplicación.npm run pack:linux
(y pack:osx
, pack:win
) - Genera los instaladores para cada sistema operativo. Antes hacer un build
. Ver npm run release
.npm run release
- Versiona y taggea la aplicación. Al hacerlo, el CI se encarga de generar todos los instaladores y los sube a Github.Si se desea empaquetar (npm run pack...
) para otro SO (que no sea el tuyo) hay que tener en cuenta que solamente se puede hacer desde linux. Además, hay que tener instaladas ciertas dependencias:
nsis
, wine
y wine-mono
.Debian/Ubuntu:
sudo apt install nsis
Arch:
yay -S nsis
Para tener un backend para probar funcionalidades relacionadas a usuarios y a guardar desafíos es necesario tener levantado los proyectos de Pilas Bloques API, Pilas Bloques Analytics, (ambos disponibles en el proyecto backend) y una base de datos MongoDB. Las instrucciones para hacerlo están en ese repositorio.
https://github.com/Program-AR/pilas-bloques-ember/wiki/Release-y-Deploy