Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/sanjib-sen/weblatex

A complete alternative for Overleaf with VSCode + Web + Git Integration + Copilot + Grammar & Spell Checker + Live Collaboration Support. Based on GitHub Codespace and Dev container.
https://github.com/sanjib-sen/weblatex

docker editor git github-config grammarly languagetool latex latex-editor overleaf tex texlive text-editor vscode

Last synced: 2 months ago
JSON representation

A complete alternative for Overleaf with VSCode + Web + Git Integration + Copilot + Grammar & Spell Checker + Live Collaboration Support. Based on GitHub Codespace and Dev container.

Lists

README

        

# The WebLatex

![image](https://user-images.githubusercontent.com/54777542/224550592-657a2f4e-bd46-4f11-85af-e9b299650434.jpg)

[![GitHub license](https://img.shields.io/github/license/sanjib-sen/WebLaTex?style=for-the-badge)](https://github.com/sanjib-sen/WebLaTex/blob/main/LICENSE) [![GitHub forks](https://img.shields.io/github/forks/sanjib-sen/WebLaTex?color=orange&label=Forked%20%F0%9F%91%A8%E2%80%8D%F0%9F%92%BB&style=for-the-badge)](https://github.com/sanjib-sen/WebLaTex/network) [![GitHub stars](https://img.shields.io/github/stars/sanjib-sen/WebLaTex?color=red&label=Loved%20%F0%9F%92%96&style=for-the-badge)](https://github.com/sanjib-sen/WebLaTex/stargazers)

WebLaTeX - A LaTeX editor with Git, VSCode, Copilot, Grammarly and more | Product Hunt

> A complete alternative for Overleaf with VSCode + Web + Git Integration + GitHub Copilot + Grammarly/LanguageTool + Live Collaboration Support

![get-started](https://user-images.githubusercontent.com/54777542/224549654-6f2dc0ad-54e0-4827-b316-ebe264dbf007.svg)

> I am so glad to share that, the project has been recognized globally and many people are using this tool to create their journals, research paper, and personal resume. Students, Lecturers, and Professors from universities like the University of Minnesota, University of Colorado, University of Utah, Cornell University, and even MIT Plasma Science and Fusion Center are using this tool for creating documents. A few of you personally thanked me for this project and wished to contribute in the future, which honestly I did not expect myself! Thank you again, for the limitless support!

- [The WebLatex](#the-weblatex)
- [Preview](#preview)
- [Why](#why)
- [Just use overleaf](#just-use-overleaf)
- [Whats New](#whats-new)
- [Installation Instructions](#installation-instructions)
- [Where is my PDF?](#where-is-my-pdf)
- [Editor Instructions](#editor-instructions)
- [To use with LuaLatex or any other Tex program](#to-use-with-lualatex-or-any-other-tex-program)
- [GitHub Copilot](#github-copilot)
- [Grammarly](#grammarly)
- [LanguageTools](#languagetools)
- [Live Collaboration](#live-collaboration)
- [PDF Viewer Dark Mode](#pdf-viewer-dark-mode)
- [Configuration](#configuration)
- [More Features and Configurations](#more-features-and-configurations)
- [Contribution](#contribution)
- [Credits](#credits)
- [What's Next](#whats-next)
- [Contact](#contact)

## Preview

[Video Preview](https://user-images.githubusercontent.com/54777542/224549577-1c5e0b5f-c544-4fdf-a79e-25655483e2da.mp4)

## Star History





Star History Chart

## Why

Do you use latex as your Resume builder / Research Project / Documentation / Article or any Documentation? Then you probably sometimes wondered in your life if you could use the advantages of git. You could just commit your changes and roll back to older versions anytime you like. When writing a journal, you suddenly remembered you need the section that you deleted earlier. What will you do?

Hasn't it occurred to you that if only you could use your favorite editor VSCode to write your documents? With all the settings you configured, themes you liked and the extensions you probably prefer over your toxic girlfriend?

Think of a moment, your thesis supervisor and co-supervisor wanted to make some changes to your document. What you will do? Email them your document and tell them to reply with the updated version? This is no 80's.

Or, you are in your car, away from your Laptop / Desktop. Suddenly remember you forgot to change the title of your document from "Loren Ipsum" to your actual document title. Won't it be great to modify your document On the Go with your phone? Or in a nerdy way, Apple Watch?

What if you could format your latex codes, automatically, after each save?

And most importantly, what if you could use [GitHub Copilot](https://github.com/features/copilot) to automatically complete your latex commands and sentences? Forget the command for a thing? No worry, this tool will guess what could be the next command and will suggest that to you in each step. Not only it complete and suggest commands, but also the full sentence, and Paragraphs! Can you imaging how powerful you can be with this tool?

And do I need to tell you about the usefulness of [Grammarly](https://www.grammarly.com/) for built in grammar and spelling checker? Or [LanguageTool](https://languagetool.org)? if you prefer open-source?

**Yes! You can do all of these things now with Git, GitHub, Full VSCode Integration, Grammarly, Live Collaboration and Web Support - The WebLatex.**

### Just use overleaf

Yes, but

- In overleaf, you have to pay 40$ to get the git feature which isn't even have the best or full git experience.
- Pay 40$ to collaborate with more than 1 person
- No VSCode, Code formatting, Grammarly, Or Dark Mode / Customization
- GitHub Copilot: Clippy, but a lot better!

## Whats New

- [GitHub Copilot](#github-copilot)
- Added support for the up-to-date texlive-full package. Now, You can stop worrying about package support.

## Installation Instructions

![get-started](https://user-images.githubusercontent.com/54777542/224549654-6f2dc0ad-54e0-4827-b316-ebe264dbf007.svg)

> You can either fork this repository or just use as a template. You will not get latest updates if you use this as a template. And you can only fork once. So, I will recommend this to use as a template and check for updates manually.

1. Login or Sign Up to [GitHub](https://github.com/login)
2. Use this as template or Fork.

- **Use as Template (Recommended):** just Click on `Use this template` and `Create a new Repository` or just [Click Here](https://github.com/sanjib-sen/weblatex/generate)

Or,

- **Fork:** Fork this repository or just [Click Here](https://github.com/sanjib-sen/weblatex/fork)

3. Give it a name and select **Create Fork / Create repository from template**
4. Select **<> Code** > **CodeSpaces** > **Create Codespace on Main**
![tutorial](https://user-images.githubusercontent.com/54777542/224550678-32a949ae-3a9b-4e8d-a0f1-ad30ec429908.gif)

5. It will start installing. **You Have to wait for 2 mins in the first time**. After that it will take 2/3 seconds to open up

## Where is my PDF?

Generated PDFs will be saved to **`/PDF`** directory

## Editor Instructions

1. Pressing `Ctrl+S` will save the document and generate PDF in the **PDF** folder
2. To check the generated PDF click on the PDF file. However **It will take 20/30 seconds to open the preview for the first time. So, do not panic**. After that, it will generate and preview the pdf instantly.
3. Your code will be automatically saved and the PDF will generate automatically each time you edit something
4. You can see all the error logs in the **Terminal > Output > Latex Compiler** as well as in the Latex Workshop sidebar
5. If it shows **Error showing PDF** or in case of any inconvenience, just reload the browser or press `Ctrl+R`
6. **Just use it as you use Visual Studio Code**
7. Do not delete the `devcontainer.json` file. However you can edit the properties there to customize many things!

## To use with LuaLatex or any other Tex program

Add this line to your main .tex file

```tex
%!TEX program =
```

For example, to use **`LuaLatex`**:

```tex
%!TEX program = lualatex
```

## GitHub Copilot

Wonderful news, people! [GitHub Copilot](https://github.com/features/copilot) has been integrated with this tool, thanks to [@thodson-hugs](https://github.com/thodson-hugs). This program will suggest the next command, sentence and paragraph based on your document and previous writings.

![copilot](https://user-images.githubusercontent.com/54777542/224550711-9927d67f-e63e-445e-9ff0-db7674d7acef.gif)

To turn this off just **remove** or **comment out** the `"GitHub.copilot"` extension from the extensions list in `./.devcontainer/devcontainer.json` file.

```json
"extensions": [
"...",
//"GitHub.copilot",
"..."
]
```

## Grammarly

This editor has built-in [Grammarly](https://www.grammarly.com/) support for `.tex` files.

To disable grammarly, you can just **remove** or **comment out** the `"ms-vsliveshare.vsliveshare"` extension from the extensions list in `./.devcontainer/devcontainer.json` file.

```json
"extensions": [
"...",
//"znck.grammarly",
"..."
]
```

If you want to use Grammarly for other files, Go to `./.devcontainer/devcontainer.json` and add your file extension in the

```json
"grammarly.files.include": ["*.md", ".YourFileExtension"]
```

And in case you do not want to use Grammarly for other files, add your file extension in the

```json
"grammarly.files.exclude": ["*.md", ".YourFileExtension"]
```

You can use Grammarly in any file apart from `.tex` files. Just press `CTRL + SHIFT + P` and search for `Grammarly: Check text`.

This editor uses Grammarly Free account to check grammar and spelling. However if you want to use your Grammarly Premium account, simply press `CTRL + SHIFT + P` and search for `Grammarly: Login / Connect your account`.

## LanguageTools

This editor has built-in [LanguageTool](https://languagetool.org) support for `BibTEX`, `ConTEXt`, `LATEX`, `Markdown`, `Org`, `reStructuredText`, `R Sweave`, and `XHTML` documents but **it is disabled by default in favor of grammarly**. If you want to use LanguageTool instead of grammarly, just **uncomment** the following lines from `.devcontainer/devcontainer.json`

```json
"extensions": [
"...",
"valentjn.vscode-ltex",
"..."
]
```

And the **remove** or **comment out** the `"znck.grammarly"` extension from the extensions list in `./.devcontainer/devcontainer.json` file. (Recommended)

```json
"extensions": [
"...",
// "znck.grammarly",
"..."
]
```

## Live Collaboration

> All about Live Collaboration: [Click Here](https://visualstudio.microsoft.com/services/live-share/)

Just click on the **Live Share** Sidebar button and you are good to go

![collaborate](https://user-images.githubusercontent.com/54777542/224550768-48997ac9-8747-425b-b7b4-05473f3ba944.png)

If you do not need the Live Collaboration at all, you can just **remove** or **comment out** the `"ms-vsliveshare.vsliveshare"` extension from the extensions list in `./.devcontainer/devcontainer.json` file.

```json
"extensions": [
"...",
// "ms-vsliveshare.vsliveshare",
"..."
]
```

## PDF Viewer Dark Mode

The pdf viewer will preview the pdf in Dark Mode by default if your Operating System is in Dark Mode. To view the pdf in Normal mode in os-wide dark mode just **remove or comment** these lines from `./.devcontainer/devcontainer.json`.

```json
//"latex-workshop.view.pdf.color.dark.pageColorsBackground":"#171717",
//"latex-workshop.view.pdf.color.dark.pageColorsForeground":"#FFFFFF",
//"latex-workshop.view.pdf.color.dark.backgroundColor":"#171717",
```

## Configuration

- To change the output directory change the following properties in `./.devcontainer/devcontainer.json`

```json
"latex-workshop.latex.outDir": "",
"latex-workshop.latex.magic.args": ["-output-directory="],
```

- Other configurations (e.g. PDF Generation Delay, Auto Saving etc.) can be modified in `./.devcontainer/devcontainer.json`. Check the [Wiki](https://github.com/James-Yu/LaTeX-Workshop/wiki)

## More Features and Configurations

There are a lot of features like

- [Intellisense (Citation, References)](https://github.com/James-Yu/LaTeX-Workshop/wiki/Intellisense)
- [Snippet and Shortcuts](https://github.com/James-Yu/LaTeX-Workshop/wiki/Snippets)
- [Linting](https://github.com/James-Yu/LaTeX-Workshop/wiki/Linters)
- [Formatting](https://github.com/James-Yu/LaTeX-Workshop/wiki/Format)
- [Code Folding](https://github.com/James-Yu/LaTeX-Workshop/wiki/ExtraFeatures#code-folding)

And a lot [more](https://github.com/James-Yu/LaTeX-Workshop/wiki/ExtraFeatures).

All of the features and configurations can be found [here](https://github.com/James-Yu/LaTeX-Workshop/wiki).

## Contribution

I am open to and request you to contribute to this project. You can just Create a new issue to let me know about your concern/requests or just send a pull request with your desired changes.

## Credits

- @James-Yu's [latex-workshop](https://github.com/James-Yu/LaTeX-Workshop) For all the Latex support.
- [danteev/texlive](https://github.com/dante-ev/docker-texlive) For Latex compilation.
- @znck's [Grammarly](https://github.com/znck/grammarly) for Grammarly support.
- [@thodson-hugs](https://github.com/thodson-hugs) for GitHub Copilot

## What's Next

1. Will optimize the backend to decrease installation time and PDF showing time for the first time
2. Documentation
3. Release: Export PDF as a release version
4. You tell me

## Contact

1. Send an email to `[email protected]`
2. [Facebook](https://www.facebook.com/sanjib.kumarsen.963/), [LinkedIn](https://www.linkedin.com/in/sanjibsen/)