Repo for the official bitburner filesynchronisation package.

Overview

bitburner-filesync

A file synchronisation utility for Bitburner, using the Remote File API.

It allows players to synchronize scripts and text files from their computer's disk to the game in both the Electron build and website.

How to use (for users)

You must have a recent version of npm installed after which you can run

npx bitburner-filesync

This pulls and runs the latest release of bitburner-filesync for you.

Configuration

The program, when ran, uses a local file to have itself configured to your preferences. This file is filesync.json within the directory you start bitburner-filesync.

Here's an example of it's contents:

{
  "allowedFiletypes": [
    ".js",
    ".script",
    ".txt"
  ],
  "allowDeletingFiles": false,
  "port": 12525,
  "scriptsFolder": ".",
  "quiet": false,
  "dry": false,
  "definitionFile": {
    "update": false,
    "location": "NetScriptDefinitions.d.ts"
  },
  "pushAllOnConnection": false
}
Comments
  • Add linting

    Add linting

    A linter for the code would be very nice to have. You don't necessarily have to fix all linting issues within the PR adding the linter. But you do have to add it to the package.json as a npm run lint option.

    enhancement good first issue hacktoberfest 
    opened by Hoekstraa 5
  • Add formatter

    Add formatter

    Adding a formatter would be good for code quality. Please only commit the changes for adding the formatter if you make a PR for this issue. I'll run the formatter myself. But you do have to add it to the package.json as a npm run formatter option besides adding it as a dependency.

    enhancement good first issue hacktoberfest 
    opened by Hoekstraa 2
  • Add eslint

    Add eslint

    Here's the PR that adds eslint after the JS -> TS migration.
    I received no response for a while in the issue so I decided to just submit this PR since it's a small change.

    I already fixed the few issues that the linter warned about.

    Related: #15 (previous PR that was outdated)

    Closes #6

    opened by Pustur 1
  • update repo URL

    update repo URL

    Hunting down why I can't get npx bitburner-filesync to work from npm script, but works on the command line and I noticed this. It isn't going to fix me, but this should probably match the true repo location 😎

    opened by sugardave 1
  • Fortify message handler

    Fortify message handler

    This still needs to be tested, I didn't have time to do that yet. But this should fortify the message handler quite nicely and fix some related typing errors.

    closes #8

    opened by LJNeon 0
  • Updates build config to output node script for npx

    Updates build config to output node script for npx

    Does what it says on the tin. Relies on #20 as both of them change tsconfig pretty substantially.

    I've verified that this does run both in directory, and in other directories. The dist folder is still gitignored, so you'll have to make sure and build it locally if you want to use the local version.

    Adds npm run build and npm run clean commands.

    Next steps: we can add a CD pipeline either tag-based or branch-based if you want, so every time you push to a specific branch, or to a new tag, it builds and publishes the package. That way you don't have to worry about doing it by hand. That'll require setting secrets, though, I believe.

    hacktoberfest-accepted 
    opened by HeinousTugboat 0
  • Updates prettier and friends

    Updates prettier and friends

    General cleanup stuff.

    Commits

    1. Updates the configuration, enables the prettier workflow in GitHub, adds some VSCode workspace settings to ensure the correct formatter's being used for people using VSCode.
    2. Moves the mocha config out of package.json to save @Hoekstraa's sanity.
    3. Prettier run against the entire codebase. Shouldn't ever need this again after this merges, so long as only green builds are merged.
    hacktoberfest-accepted 
    opened by HeinousTugboat 0
  • Adds Mocha/Chai/Sinon, basic tests, and basic CI workflow

    Adds Mocha/Chai/Sinon, basic tests, and basic CI workflow

    Daisy-chained from #18. First 3 commits should go away once that's merged. I left in the workflows for Linting and Formatting in the config file, just commented out. Right now it's set to fire on every push and PR against main.

    Most of the tests are, uh, kinda pointless, but they prove it works. I turned on parallel just because, it actually slows down the test suite right now since it's so lightweight. Definitely worth considering turning it back off.

    Closes #9 Closes #10

    hacktoberfest-accepted 
    opened by HeinousTugboat 0
  • Add TypeScript and converts entire codebase

    Add TypeScript and converts entire codebase

    Unfortunately, the current solution for actually executing this is to ensure the user has ts-node installed globally, or runs it in a folder that has ts-node installed locally. (Verified this works in typescript-template on a clean install)

    Closes #11 Closes #12

    hacktoberfest-accepted 
    opened by HeinousTugboat 0
  • Add prettier and format script

    Add prettier and format script

    • Added prettier as a devDependency
    • Added format script runnable with npm run format
    • Configuration file taken directly from Bitburner
    • Formats all files, if some files or folders need to be ignored please let me know

    Closes #7

    hacktoberfest-accepted 
    opened by Pustur 0
  • Add testing framework (Mocha? Jest?)

    Add testing framework (Mocha? Jest?)

    Add a testing framework, make it run via npm run test. Either Mocha or Jest is fine by me. Make an example test to prove it works, no need to think about what to test, only test addLeadingSlash() for example.

    enhancement good first issue hacktoberfest 
    opened by Hoekstraa 0
  • Create templates for better maintaining

    Create templates for better maintaining

    opened by Dun-sin 4
  • Feature Request: Support single-time pushes and retrievals.

    Feature Request: Support single-time pushes and retrievals.

    File watching has always seemed less than ideal to me; as there are times when I want to retrieve files, times when I want to push files, and times when I don't want to do either. I find one-use commands like what the bitburner-sync package has far nicer and am currently using it for those.

    To give recent examples:

    • I can retrieve files from save A and the push them to save B.
    • I can make updates to "hot" scripts that get executed by other scripts like my weaken/grow/hack scripts without worrying about my executor scripts failing unexpectedly due to them having been run with older code.
    contentious 
    opened by LJNeon 0
Owner
null
Kurs-repo för kursen Webbserver och Databaser

Webbserver och databaser This repository is meant for CME students to access exercises and codealongs that happen throughout the course. I hope you wi

null 14 Jan 3, 2023
Grupprojekt för kurserna 'Javascript med Ramverk' och 'Agil Utveckling'

JavaScript-med-Ramverk-Laboration-3 Grupprojektet för kurserna Javascript med Ramverk och Agil Utveckling. Utvecklingsguide För information om hur utv

Svante Jonsson IT-Högskolan 3 May 18, 2022
Hemsida för personer i Sverige som kan och vill erbjuda boende till människor på flykt

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

null 4 May 3, 2022
Automation scripts I use for my Bitburner gameplay videos.

Bitburner Automation Note: I release a new piece of code when I finish a video segment in the series. If it's a multi-part series, the scripts will no

Chris Rabe 68 Dec 25, 2022
Typescript & Debugging for Bitburner

Bitburner Scripts + Typescript + Local Server A Typescript template project with debugging support, import rewrites and developer convenience. How to

Mio Bambino 8 Nov 28, 2022
Bitburner source code.

Bitburner Bitburner is a programming-based incremental game that revolves around hacking and cyberpunk themes. The game can be played at https://danie

null 27 Dec 23, 2022
New base script bot wa by Ramdani Official, don't forget to subscribe youtube Ramdani Official.

Requirements • Installation • Thanks to • Official Group Bot • Donate Information bahasa Indonesia Ramdani Botz V17 adalah bot yang di ciptakan oleh R

Ramdani Official 22 Nov 1, 2022
Package fetcher is a bot messenger which gather npm packages by uploading either a json file (package.json) or a picture representing package.json. To continue...

package-fetcher Ce projet contient un boilerplate pour un bot messenger et l'executable Windows ngrok qui va permettre de créer un tunnel https pour c

AILI Fida Aliotti Christino 2 Mar 29, 2022
This is email scheduler made using MERN. This repo contains server code, client repo is linked in readme.

Email Scheduler Client This is an email scheduler server (client in different repository). It is made using node.js/express.js. Overview User can sign

Sai Charan 2 Dec 3, 2022
Repo for tricking NPM into not hoisting your package. No dependencies and a warning if imported.

noist (Short for No Hoist) Repo for tricking NPM into not hoisting your package. No dependencies and a warning if imported. Why? As of npm@7 NPM suppo

Zackery Griesinger 20 Oct 27, 2022
A devtool improve your pakage manager use experience no more care about what package manager is this repo use; one line, try all.

pi A devtool improve your pakage manager use experience no more care about what package manager is this repo use; one line, try all. Stargazers over t

tick 11 Nov 1, 2022
This package is for developers to be able to easily integrate bad word checking into their projects.\r This package can return bad words in array or regular expression (regex) form.

Vietnamese Bad Words This package is for developers to be able to easily integrate bad word checking into their projects. This package can return bad

Nguyễn Quang Sáng 8 Nov 3, 2022
Multi-platform node package bundle to a package.json.

dmpc Multi-platform node package bundle to a package.json. install ### npm mode npm i -g @kingsword/dmpc ### yarn mode yarn global add @kingsword/dmp

Kingsword 2 Oct 16, 2022
Provides information on official divisional administrative regions of Portugal

GEO PT API Provides information on official divisional administrative regions of Portugal (based on "Carta Administrativa Oficial de Portugal, 2020",

João Pimentel Ferreira 75 Dec 27, 2022
official github mirror of gg-struggle

gg-struggle tl;dr gg-struggle is a program that reduces loading times by caching the Guilty Gear server responses, reducing slowdowns caused by latenc

cybermelon 28 Mar 12, 2022
official Alibaba Design system vue components snippets for visual studio code

Alibaba DLS Snippets for vscode Installation You can either install this extension by searching for Alibaba DLS Snippets in your vscode extensions sto

Alibaba Travels Co Open Source 2 Sep 25, 2021
This is a cloned website of the official tesla page built with react js

TESLA-CLONE This is a cloned website of the official tesla page built with react js. The page has simillar sections which made duplicating these secti

Kevv_in 25 Nov 7, 2022
A UI library by WeChat official design team, includes the most useful widgets/modules in mobile web applications.

WeUI - tailor-made for WeChat web service 中文版本 Introduction WeUI is an WeChat-like UI framework officially designed by the WeChat Design Team, tailor-

Tencent 26.6k Jan 2, 2023
Klecks is the official open-source release of the community-funded online painting app Kleki.

Klecks (German for "splash of color", pronounced "clex") is the official open-source release of the community-funded online painting app Kleki. Klecks

I paint, code and mess around. 74 Dec 27, 2022