Lantern Power
Your coding session has a power level. Keep your willpower charged.
Lantern Power is a Green Lantern--inspired Visual Studio Code
extension that turns coding activity into a small Lantern-themed
experience. As you type, your Lantern's power drains; interact with the
Lantern to recharge it, and explore the extension's Corps-inspired
modes.
Features
- Power drain while coding --- typing consumes Lantern power,
making your coding activity part of the experience.
- Interactive recharging --- click and hold the central glowing
area of the Lantern in the extension interface to recharge it.
- Lantern visuals --- choose between available Lantern
appearances, including the classic Lantern and the Emerald & Gold
design.
- Green and Yellow modes --- switch between Green and Yellow
Lantern-inspired modes.
- Yellow invitation mechanic --- encounter an invitation to enter
Yellow mode and choose whether to accept or decline it.
- Status-bar indicator --- keep an eye on your current power state
from the VS Code status bar.
- Persistent appearance choice --- your selected Lantern
appearance is remembered between VS Code sessions.
Features and behavior may evolve as Lantern Power is developed. Some
details may vary by release.
Getting started
Install from a VSIX file
If you have downloaded a lantern-power-<version>.vsix package:
- Open Visual Studio Code.
- Open the Extensions view.
- Select the ... menu in the Extensions view.
- Choose Install from VSIX....
- Select the downloaded VSIX file.
- Reload VS Code if prompted.
Once the extension is available in the Visual Studio Code Marketplace,
you will also be able to find and install it there by searching for
Lantern Power.
How to use it
- Open VS Code and launch Lantern Power using the extension's
available command or interface.
- Watch your Lantern's power level as you work and type.
- When the power gets low, move to the Lantern interface and click and
hold its central glowing area to recharge it.
- Explore the available Lantern appearances and Green/Yellow mode
interactions.
- Use the status-bar indicator to check your current power state.
Recharging tip: Hold the interaction over the Lantern's central
glowing area. The intended interaction is a click-and-hold, rather than
a quick click.
Development
Want to run Lantern Power locally or contribute?
Prerequisites
Run the extension from source
Clone or download this repository.
Open the project folder in VS Code.
Install dependencies:
npm install
Compile the TypeScript source using the script configured by the
project. In this project, that may be:
npm run compile
Press F5 in VS Code to launch an Extension Development Host and
test the extension.
Use the scripts defined in package.json if they differ from the
examples above.
Package the extension
Install the VS Code Extension Manager CLI:
npm install -g @vscode/vsce
Then package the extension from the project root:
vsce package
This creates a .vsix file that can be installed locally or shared with
testers.
Feedback and contributions
Bug reports, feature ideas, and suggestions are welcome. If you open an
issue, include:
- Your VS Code version and operating system
- Steps to reproduce the issue
- What you expected to happen
- What actually happened
- Relevant error messages from View → Output or the Extension Host
logs, if available
Please keep pull requests focused and describe how you tested your
changes.
Roadmap ideas
Potential future directions for the project include more Lantern
Corps-inspired themes, additional Lantern and ring designs, and expanded
interactions. These are ideas rather than promises or confirmed
features.
Disclaimer
Lantern Power is an independent, fan-inspired project and is not
affiliated with, endorsed by, or sponsored by DC or Warner Bros. Green
Lantern and related names, characters, symbols, and other intellectual
property may belong to their respective rights holders. This project
does not claim ownership of those properties.
Please review applicable intellectual-property rules before
redistributing artwork, logos, or other protected material.
License
Add your chosen license here and include the corresponding LICENSE
file in the repository before describing the project as open source. If
the repository does not yet include a license, all rights remain with
the applicable copyright holder by default.