Skip to content

Commit

Permalink
🙌 New release!
Browse files Browse the repository at this point in the history
One new command - exit.ts
Run the build.sh script to build the extension.
Fixing an issue where fonts would not load.
Fixed grammar issues in README.md
Added a default export to export.ts

As always if there are any issues, *any* where, do not hesitate to open up an issue
  • Loading branch information
insomnia-creator committed May 13, 2022
1 parent 3793638 commit c503b43
Show file tree
Hide file tree
Showing 15 changed files with 1,083 additions and 888 deletions.
15 changes: 8 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,27 +18,28 @@ TermStart is made using the most bleeding edge technologies out there, with Vue.

TermStart's default set of components and commands will give you a head start to a clean, minimalist terminal.

There's always room for add-ons so you can configure, script, make termstart anyway you want to.
There's always room for add-ons, so you can configure, script, make termstart anyway you want to.

TermStart comes with 3 default themes:
Flamingo, Glass and Vue-neu.

Styling is simple enough, you can poke around or you can fully modify any element you want to.
Styling is simple enough, you can poke around, or you can fully modify any element you want to.

## Development Roadmap.

TermStart is starting off small but has high hopes.

- [X] Get a working build up
- [ ] Exit private alpha
- [ ] Fix fonts
- [ ] Release extension publically
- [X] Fix fonts
- [X] Release extension publicly
- [ ] Add more themes
- [ ] Add more commands

### Developer Experience
- [X] Create a basic command template/structure.
- [X] Create a few themes and a kind of toolkit for themes
- [ ] Create a framework for making themes.

### User Experience
- [X] Add a few custom themes
Expand All @@ -48,23 +49,23 @@ TermStart is starting off small but has high hopes.
- [ ] Add ability to


It maybe starting off as a hobby project but I have hopes that this thing will be more than just a cool startpage. It will be a place for interaction and infinite productivity. To get things done faster whilst being more simpler.
It's maybe starting off as a hobby project, but I have high hopes that this thing will be more than just a cool start-page. It will be a place for interaction and infinite productivity. To get things done faster whilst being simpler.

We're going to set the bar high for what a fully featured startpage can be.

## The idea behind TermStart

### Another Terminal? Great.

While I feel the idea of a Terminal Startpage has been exploited to hell and beyond, I think there's room for improvement.
While I feel the idea of a Terminal Start-page has been exploited to hell and beyond, I think there's room for improvement.

Most of the startpages based on a Terminal may look good and enticing, but I find they barely offer much functionality.

### Commands are hard and complex to learn.

Agreed. But if you're a hardcore terminal user you might find it natural to get used to. We want to create an experience which you can get used to without feeling alien.

A GUI might be better option but I think a Terminal is a good starting point.
A GUI might be better option, but I think a Terminal is a good starting point.

### Why not make a GUI?

Expand Down
6 changes: 6 additions & 0 deletions build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
yarn install
yarn run build
cp src/manifest.json dist/
mv dist extension
yarn run pack
echo 'Your extension is ready to be installed in Google Chrome! ✨'
4 changes: 3 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,12 @@
"scripts": {
"serve": "vue-cli-service serve",
"build": "vue-cli-service build",
"lint": "vue-cli-service lint"
"lint": "vue-cli-service lint",
"pack": "crx pack extension -o TermStart.crx"
},
"dependencies": {
"core-js": "^3.8.3",
"crx": "^5.0.1",
"vue": "^3.2.13",
"vue-class-component": "^8.0.0-0"
},
Expand Down
1 change: 1 addition & 0 deletions public/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,5 @@
<div id="app"></div>
<!-- built files will be auto injected -->
</body>

</html>
4 changes: 2 additions & 2 deletions src/App.vue
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ export default defineComponent({
color: $foreground
height: 100vh
width: 100vw
font-family: $font-family
*
margin: 0px !important
margin: 0 !important
font-family: $font-family
</style>
File renamed without changes.
3 changes: 0 additions & 3 deletions src/main.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
import { createApp } from 'vue'
import App from './App.vue'

const font = new FontFace('Anonymous Pro', 'url(./fonts/Anonymous_Pro-Regular.ttf)')
document.fonts.add(font);

createApp(App).mount('#app')


21 changes: 21 additions & 0 deletions src/scripts/commands/exit.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
import {Command, CommandResponse} from "@/scripts/command";
import {CommandInterface} from "@/scripts/parser";

export class Exit implements Command {
public description = 'Exit the terminal.'
public name = 'exit'


constructor(public command: CommandInterface) {
}

async execute(): Promise<CommandResponse> {
window.close();
return {
command: this.command.command,
returnValue: {type: 'success', furtherDetails: 'The command ran with perfection!'},
output: 'Exited.',
fullCommand: this.command.fullCommand
}
}
}
8 changes: 8 additions & 0 deletions src/scripts/commands/export.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import { CommandInterface } from "../parser";
import {Weather} from "@/scripts/commands/weather";
import {Search} from "@/scripts/commands/search";
import {Help} from "@/scripts/commands/help";
import {Exit} from "@/scripts/commands/exit";


export const commands: Commands[] = [
Expand Down Expand Up @@ -44,6 +45,13 @@ export const commands: Commands[] = [
return new Help(command)
},
helpCommand: `Help???`
},
{
name: "exit",
ifMatches: (command) => {
return new Exit(command)
},
helpCommand: `Exits the terminal.`
}
];

Expand Down
1 change: 0 additions & 1 deletion src/scripts/commands/template.ts
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@ export class Template implements Command {
];
public description = 'Template.'
public name = 'template'
public helpCommandDescription = 'You ran a help command \n for a template.'


constructor(public command: CommandInterface) {
Expand Down
7 changes: 4 additions & 3 deletions src/styles/flamingo.sass
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
@font-face
font-family: Anonymous Pro
src: url("@/fonts/AnonymousPro-Regular.ttf")
font-family: Anonymous
src: url("@/fonts/AnonymousPro.ttf") format("truetype")



$terminal-win-height: 70vh
Expand All @@ -14,7 +15,7 @@ $caret-colour: #A49393
$colour-as-success: inherit
$colour-as-error: #de4e4e
$colour-as-success: #95ca63
$font-family: "Anonymous Pro", monospace
$font-family: "Anonymous", monospace



Expand Down
7 changes: 4 additions & 3 deletions src/styles/glass.sass
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
@font-face
font-family: Anonymous Pro
src: url("@/fonts/AnonymousPro-Regular.ttf")
font-family: Anonymous
src: url("@/fonts/AnonymousPro.ttf") format("truetype")

$terminal-win-height: 70vh
$terminal-win-width: 70vw
Expand All @@ -12,7 +12,8 @@ $font-size-output: 24px
$caret-colour: #fff
$colour-as-success: #4bec4b
$colour-as-error: #e12828
$font-family: "Anonymous Pro", monospace
$font-family: "Anonymous", monospace




Expand Down
8 changes: 3 additions & 5 deletions src/styles/vue-neu.sass
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
@font-face
font-family: Anonymous Pro
src: url("@/fonts/AnonymousPro-Regular.ttf")
font-family: Anonymous
src: url("@/fonts/AnonymousPro.ttf") format("truetype")

$terminal-win-height: 70vh
$terminal-win-width: 70vw
Expand All @@ -12,9 +12,7 @@ $font-size-output: 24px
$caret-colour: #000
$colour-as-error: #f63737
$colour-as-success: #3ef644
$font-family: "Anonymous Pro", monospace


$font-family: "Anonymous", monospace


@mixin TerminalWindowComponentStyling
Expand Down
2 changes: 1 addition & 1 deletion vue.config.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
const { defineConfig } = require('@vue/cli-service')
module.exports = defineConfig({
transpileDependencies: true,

filenameHashing : false
})
Loading

0 comments on commit c503b43

Please sign in to comment.