OASIS_LINUX/docs/devs/contributing.md
SITO ddd2787b73 Oasis 0.9.5 con Karvan para escritorio
Rama de desarrollo experimental sobre el Oasis de epsylon, sin afiliacion con el
proyecto original. Base: 0.9.5.

Trae el modulo Karvan —salas efimeras en memoria con autodestruccion por TTL, chat
que funciona sin JavaScript y llamadas de audio y video sobre WebRTC— con el enlace
en el menu lateral por el mismo patron que el resto de modulos: renderKarvanLink
calcado de renderPollsLink, entrada en modules_view y en la lista de /modules.

Los estilos del modulo van en su propia hoja, styles/karvan.css, siguiendo el patron
de highlight.css: asi se ve igual con cualquier tema, sin depender del tema movil.

Sin servidores ICE de terceros: no hay STUN de fabrica, porque un STUN aprende la IP
publica y el momento de cada llamada. Solo candidatos host salvo que se configure un
TURN propio en oasis-config.json, con credenciales efimeras por el mecanismo REST de
coturn.

El codigo propio vive separado —views/fork/, backend/fork_routes.js,
models/karvan_model.js y translations/fork/— de modo que sobre los ficheros de
upstream solo hay enganches de una linea y cada version nueva se integra sin
arrastrar nada.

Respecto al arbol de Android: fuera el wrapper y main.js, que es su arranque; el
tema vuelve a Dark-SNH y se restauran los modulos que en movil se recortan por peso.

Verificado arrancando sin OASIS_MOBILE: nueve rutas OK, menu lateral de upstream con
27 grupos y el enlace de Karvan, cero rastro de la interfaz movil (ni hexagonos, ni
topbar, ni barra inferior), y una sala creada y servida.
2026-08-19 00:35:08 +02:00

2.2 KiB

Contributing

If you want to dive into the details, please see the contract that defines the contributor role in this project. If you're comfortable with a top-level summary, you can start here first.

Our workflow is basically GitHub Flow with specific roles:

  • Contributor: Write patches that reduce the number of problems.
  • Maintainers: Merge patches that reduce the number of problems.

If you have an issue, it's best to open an issue to describe the problem and discuss solutions, but don't worry if you've already skipped that step.

Assuming you already have a developer install you should be able to start editing source code. There are a few useful commands you should know about:

  • npm install: Ensure that software dependencies are installed.
  • npm test: Ensure that all automated tests pass.
  • npm run fix: If an automated test failed, this may fix it.

Please run npm test before writing a commit, because if there are errors then maintainers won't be able to merge your patch. Please ask for help if npm test is giving you any trouble.

Note: npm run fix is run automatically as a pre-commit hook. You always have the option to disable pre-commit hooks with git commit --no-verify.

Frequently Failed Tests

Unknown word

/src/index.js:10:42 - Unknown word (Scuttlebtut)

If this word is a typo, please fix the typo. If this error is a mistake, and you're sure that this is a word, please add the word to .cspell.json.

Code style issues found

Checking formatting...
src/index.js
README.md
Code style issues found in the above file(s). Forgot to run Prettier?

You can use npm run fix to resolve inconsistent code style. Please remember to add those changes with git add or similar before you commit.

Tips

TypeScript opportunities

If you're looking for places where TypeScript would enjoy more detail, you can run the TypeScript linter with --noImplicitAny:

npx tsc --allowJs --resolveJsonModule --lib es2018,dom --checkJs --noEmit --skipLibCheck --noImplicitAny src/index.js