Create Angular version (#1)
Convert site to Angular; also reworked contents on solution pages
This commit is contained in:
@@ -0,0 +1,95 @@
|
||||
<app-page-title title="Information Publicizing Solutions"></app-page-title>
|
||||
<article class="content auto">
|
||||
<h1>Information Publicizing and Blogging</h1>
|
||||
<p>
|
||||
In the early days of the World Wide Web, it was known as the "information superhighway." From its inception, the
|
||||
web's primary goal is information. The open nature of the Internet allows anyone, anywhere to say anything,
|
||||
provided they can connect a machine to the network. In fact, there are software products to handle everything
|
||||
except creating the content; all you have to bring is the ability to form a coherent thought, and type that
|
||||
thought into a box. <a href="https://wordpress.org" title="WordPress">WordPress</a> is one of the most popular
|
||||
<abbr title="Web Log">blog</abbr>ging platforms in use today; it allows authors to concentrate on the content of
|
||||
their websites, rather than forcing authors to turn into programmers.
|
||||
</p>
|
||||
<h2>Custom-Built Sites</h2>
|
||||
<ul>
|
||||
<li>
|
||||
<p>
|
||||
We developed and maintained the site for <a href="http://www.emeraldmountainchristianschool.org">Emerald
|
||||
Mountain Christian School</a>
|
||||
<small> (<a routerLink="/solutions/emerald-mountain-christian-school" title="Emerald Mountain Christian School | Bit Badger Solutions">about</a>)</small>
|
||||
for 9 years, where they had information about the type of curriculum they teach, the school's 40+-year history,
|
||||
a calendar of events, and how to get more information.
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
<p>
|
||||
We built and maintained the site for <a href="https://www.summershome.org">Photography by Michelle</a>
|
||||
<small> (<a routerLink="/solutions/photography-by-michelle" title="Photography by Michelle | Bit Badger Solutions">about</a>)</small>,
|
||||
which had information, prices, and samples of the photographer's work, as well as the ability for customers to
|
||||
view proofs and make photo selections online.
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
<p>
|
||||
The site for <a href="https://bayvista.org" title="Bay Vista Baptist Church">Bay Vista Baptist Church</a>
|
||||
<small> (<a routerLink="/solutions/bay-vista" title="Bay Vista Baptist Church | Bit Badger Solutions">about</a>)</small>
|
||||
utilizes a "static site generator," where the entire site is generated from source files, then served. It
|
||||
requires no back-end database, which means that the server can send pages as fast as its clients can take them.
|
||||
This site even has a generated podcast feed! Adding content to these types of sites requires a bit more
|
||||
technical knowledge beyond "typing text in a box," but it is a great way to build ultra-fast, scalable web
|
||||
sites.
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
<p>
|
||||
This site is a single-page application (SPA) utilizing the <a href="https://angular.io">Angular</a> JavaScript
|
||||
framework. The application pages are generated based on an internal data set, and the other pages are simple
|
||||
text components. Its bundling means that the initial page is small, and after the initial load, it runs
|
||||
entirely in the browser or on a phone or tablet. Sites that reference external data sets would still need to
|
||||
access the Internet to retrieve data, but this is much more efficient than having to download the entire page
|
||||
every single click. (It's even <a href="https://github.com/bit-badger/bitbadger.solutions">open source</a> if
|
||||
you want to see how we did it.)
|
||||
</p>
|
||||
</li>
|
||||
</ul>
|
||||
<h2>WordPress Design, Customization, and Support</h2>
|
||||
<ul>
|
||||
<li>
|
||||
<p>
|
||||
We helped <a routerLink="/solutions/cassy-fiano" title="Cassy Fiano | Bit Badger Solutions">Cassy Fiano</a>
|
||||
and <a routerLink="/solutions/dr-melissa-clouthier" title="Dr. Melissa Clouthier | Bit Badger Solutions">Dr.
|
||||
Melissa Clouthier</a> both move their blogs from Blogspot to their own domains.
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
<p>
|
||||
We migrated <a routerLink="/solutions/liberty-pundits" title="Liberty Pundits">Liberty Pundits</a> from a
|
||||
custom blog platform to WordPress, and set up and maintained their server, which routinely cleared 100,000
|
||||
hits per day in its prime.
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
<p>
|
||||
For <a href="https://www.futilitycloset.com" title="Futility Closet">Futility Closet</a>
|
||||
<small> (<a routerLink="/solutions/futility-closet" title="Futility Closet | Bit Badger Solutions">about</a>)</small>,
|
||||
we moved their site from a shared hosting platform to its own <abbr title="Virtual Private Server">VPS</abbr>,
|
||||
to enable it to handle its ever-increasing traffic.
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
<p>
|
||||
<a routerLink="/solutions/tcms" title="TCMS | Bit Badger Solutions">TCMS</a> and
|
||||
<a routerLink="/solutions/nsx" title="NSXapp | Bit Badger Solutions">NSXapp</a> both used WordPress as their
|
||||
front end, which also provided a public web presence that the customers could update themselves.
|
||||
</p>
|
||||
</li>
|
||||
</ul>
|
||||
<p>
|
||||
On <em><a href="https://blog.bitbadger.solutions" title="The Bit Badger Blog">The Bit Badger Blog</a></em> you can
|
||||
browse the
|
||||
<a href="https://blog.bitbadger.solutions/category/wordpress" title="WordPress | The Bit Badger Blog">WordPress</a>
|
||||
category for information on plug-ins, and we have supported theme customizations for nearly all of the WordPress
|
||||
sites linked on the sidebar/footer of the home page.
|
||||
</p>
|
||||
<p><br><a routerLink="/" title="Home">« Home</a></p>
|
||||
</article>
|
||||
@@ -0,0 +1,13 @@
|
||||
import { Component, OnInit } from '@angular/core'
|
||||
|
||||
@Component({
|
||||
selector: 'app-information-publicizing',
|
||||
templateUrl: './information-publicizing.component.html'
|
||||
})
|
||||
export class InformationPublicizingComponent implements OnInit {
|
||||
|
||||
constructor() { }
|
||||
|
||||
ngOnInit() { }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
<app-page-title title="Legacy Data Solutions"></app-page-title>
|
||||
<article class="content auto">
|
||||
<h1>Legacy Data Sharing</h1>
|
||||
<p>
|
||||
Our background in mainframe applications gives us a knowledgeable perspective on retrieving information from
|
||||
older, “legacy” systems. This data can be migrated to a more modern relational or document database,
|
||||
where a web application can retrieve the information; in some cases, the data can even be exposed as a web service
|
||||
in place. These types of systems are often a great way for companies to expose their data to their customers,
|
||||
without having to move their day-to-day system from its current environment. While we currently have no active
|
||||
projects along these lines, our developers have done them in the past for other organizations; sadly, none can be
|
||||
linked publicly.
|
||||
</p>
|
||||
<p><br><a routerLink="/" title="Home">« Home</a></p>
|
||||
</article>
|
||||
@@ -0,0 +1,13 @@
|
||||
import { Component, OnInit } from '@angular/core'
|
||||
|
||||
@Component({
|
||||
selector: 'app-legacy-data',
|
||||
templateUrl: './legacy-data.component.html'
|
||||
})
|
||||
export class LegacyDataComponent implements OnInit {
|
||||
|
||||
constructor() { }
|
||||
|
||||
ngOnInit() { }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
<app-page-title title="Process Automation Solutions"></app-page-title>
|
||||
<article class="content auto">
|
||||
<h1>Process Automation and User Engagement</h1>
|
||||
<p>
|
||||
Computers can be used to augment or automate nearly any process; could you think of generating bank statements,
|
||||
processing mailing lists, or tracking orders without some form of automation? We develop web-based solutions to
|
||||
automate <em>your</em> processes, ensuring that your business constraints are satisfied; these systems can run on
|
||||
the Internet or your private network. For Internet-facing solutions, we engineer solutions that allow them to
|
||||
interact with you securely, presented in an engaging manner. And, by “engagement,” we are not
|
||||
describing intrusive page pop-ups and other <span class="strike">marketing gimmicks</span> web annoyances; we
|
||||
determine an optimal user experience for <em>your</em> customers, and tailor the solution to work for both of you.
|
||||
</p>
|
||||
<p>Several of our solutions fit this description.</p>
|
||||
<ul>
|
||||
<li>
|
||||
<p>
|
||||
<a routerLink="/solutions/virtual-prayer-room" title="Virtual Prayer Room | Bit Badger Solutions">Virtual
|
||||
Prayer Room</a> helped the prayer ministry of
|
||||
<a href="http://www.hoffmantown.org" title="Hoffmantown Church in Albuquerque, NM">Hoffmantown Church</a>
|
||||
enable their prayer warriors to have access to requests wherever they are, even in their inbox once a day!
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
<p>
|
||||
<a routerLink="/solutions/tcms" title="TCMS | Bit Badger Solutions">TCMS</a> was an application that helped
|
||||
organizations such as <a href="http://www.loveincabq.org">Love INC of South Albuquerque</a> connect people with
|
||||
needs to people who can help fulfill those needs. TCMS sprung from the
|
||||
<a href="https://nsx.archive.bitbadger.solutions" title="Not So Extreme Makeover: Community Edition (Archive)">Not
|
||||
So Extreme Makeover: Community Edition</a> in Albuquerque, New Mexico during spring break 2008; we not only
|
||||
developed the public presence, but a private system called
|
||||
<a routerLink="/solutions/nsx" title="NSXapp | Bit Badger Solutions">NSXapp</a> that enabled the management of
|
||||
the volunteers, families, and things for this massive effort.
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
<p>
|
||||
We continue to offer <a href="https://prayer.bitbadger.solutions" title="PrayerTracker">PrayerTracker</a>
|
||||
<small> (<a routerLink="/solutions/prayer-tracker" title="PrayerTracker | Bit Badger Solutions">about</a>)</small>,
|
||||
a free-to-use web application that helps Sunday School classes (or other small groups) generate a prayer
|
||||
request list; it provides a central place for list management and continuity.
|
||||
</p>
|
||||
</li>
|
||||
</ul>
|
||||
<p><br><a routerLink="/" title="Home">« Home</a></p>
|
||||
</article>
|
||||
@@ -0,0 +1,13 @@
|
||||
import { Component, OnInit } from '@angular/core'
|
||||
|
||||
@Component({
|
||||
selector: 'app-process-automation',
|
||||
templateUrl: './process-automation.component.html'
|
||||
})
|
||||
export class ProcessAutomationComponent implements OnInit {
|
||||
|
||||
constructor() { }
|
||||
|
||||
ngOnInit() { }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
<app-page-title title="Web Services and API Solutions"></app-page-title>
|
||||
<article class="content auto">
|
||||
<h1>Web Services and APIs</h1>
|
||||
<p>
|
||||
A web service is a way of using the Internet to provide or accept information that makes sense to computers; this
|
||||
allows other sites or applications to consume information from, or provide information to, your service. This
|
||||
enables communication between applications, without having to establish any communication channels other than the
|
||||
ones that web browsers already use. It isn't the best fit for every application, but when it is useful, it is
|
||||
<em>very</em> useful.
|
||||
</p>
|
||||
<p>
|
||||
An <abbr title="Application Programming Interface">API</abbr> can be a synonym for a web service, but it can also
|
||||
be a generally accessible way of providing data. For example, Twitter has a public API, which other applications
|
||||
can use to display tweets on their site.
|
||||
</p>
|
||||
<ul>
|
||||
<li>
|
||||
<p>
|
||||
<a routerLink="/solutions/photography-by-michelle" title="Photography by Michelle | Bit Badger Solutions">Photography
|
||||
by Michelle</a> had a private web API that a desktop application utilized to create the online proof sets right
|
||||
from the computer where the images resided.
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
<p>
|
||||
We
|
||||
<a href="https://blog.bitbadger.solutions/2010/4040-web-service.html" title="40/40 Web Service | The Bit Badger Blog">wrote
|
||||
a service</a> for the 2010
|
||||
<a href="http://erlc.com/4040/" title="40/40 Prayer Vigil | Ethics and Religious Liberty Commission of the Southern Baptist Convention">40/40
|
||||
Prayer Vigil</a>, which was utilized by several sites to display the current day's (or hour's) prayer focus, and
|
||||
<a href="https://blog.bitbadger.solutions/2012/4040-web-service-for-2012.html" title="40/40 Web Service for 2012 | The Bit Badger Blog">wrote
|
||||
one for 2012</a> as well. <em>(As the ERLC does not host these any more, this service is no longer active.)</em>
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
<p>
|
||||
<a href="https://prayerjournal.me">myPrayerJournal</a>
|
||||
<small> (<a routerLink="/solutions/my-prayer-journal" title="myPrayerJournal | Bit Badger Solutions">about</a>)</small>
|
||||
is a <abbr title="Single Page Application">SPA</abbr> which only downloads the structure of the site the first
|
||||
time you go there, then utilizes a stateless API to access data from the browser.
|
||||
</p>
|
||||
</li>
|
||||
</ul>
|
||||
<p><br><a routerLink="/" title="Home">« Home</a></p>
|
||||
</article>
|
||||
@@ -0,0 +1,13 @@
|
||||
import { Component, OnInit } from '@angular/core'
|
||||
|
||||
@Component({
|
||||
selector: 'app-web-services',
|
||||
templateUrl: './web-services.component.html'
|
||||
})
|
||||
export class WebServicesComponent implements OnInit {
|
||||
|
||||
constructor() { }
|
||||
|
||||
ngOnInit() { }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
<app-page-title title="Why Bit Badger?"></app-page-title>
|
||||
<article class="content auto">
|
||||
<h1>Why “Bit Badger”?</h1>
|
||||
<p>
|
||||
A while back, our primary developer Daniel learned through genetic testing that he had one gene that was not right
|
||||
(technically known as a genetic mutation). He is currently fine <em>(thank you for asking)</em>, but his co-workers
|
||||
thought of another group of genetic mutants – the X-Men. They wanted to develop the mutant identity for him
|
||||
in that style; since Wolverine is already taken, they wanted something similar, but based on a member of the weasel
|
||||
family (for its normal private life and fierce tenacity, not its morals). They went through several different
|
||||
options, but when “Bit Badger” was mentioned, it was the winner. The Bit Badger's mutant superpower is
|
||||
the ability to shoot 1s and 0s out its nostrils!
|
||||
</p>
|
||||
<p>
|
||||
Daniel liked this moniker, and decided to run with it. He had been growing dissatisfied with the name “DJS
|
||||
Consulting,” as he felt that name was passive. He enjoys taking problems and finding creative solutions for
|
||||
them, making our computers work for us instead of the other way around. While he can't actually breathe out 1s and
|
||||
0s, they do flow from his fingers (in groups of 8, of course).
|
||||
</p>
|
||||
<p>
|
||||
Do you have a problem that needs a solution? <a href="mailto:daniel@bitbadger.solutions">Sic the Bit Badger on
|
||||
it</a>!
|
||||
</p>
|
||||
<p><br><a routerLink="/" title="Home">« Home</a></p>
|
||||
</article>
|
||||
@@ -0,0 +1,13 @@
|
||||
import { Component, OnInit } from '@angular/core'
|
||||
|
||||
@Component({
|
||||
selector: 'app-why-bit-badger',
|
||||
templateUrl: './why-bit-badger.component.html'
|
||||
})
|
||||
export class WhyBitBadgerComponent implements OnInit {
|
||||
|
||||
constructor() { }
|
||||
|
||||
ngOnInit() { }
|
||||
|
||||
}
|
||||
60
bit-badger-solutions/src/app/pages/home/home.component.html
Normal file
60
bit-badger-solutions/src/app/pages/home/home.component.html
Normal file
@@ -0,0 +1,60 @@
|
||||
<app-page-title title="Welcome!"></app-page-title>
|
||||
<div class="home">
|
||||
<article class="content auto">
|
||||
<p class="home-lead">Bit Badger Solutions develops the site you need to enable your success!</p>
|
||||
<p>These solutions can take several different forms.</p>
|
||||
<h2>Process Automation and User Engagement</h2>
|
||||
<p>
|
||||
Do you have a process that requires recording the same thing multiple times? Do you have information in different
|
||||
places, but you need it all together? This solution is for you.
|
||||
<a routerLink="/about/process-automation-solutions" title="Process Automation Solutions">Learn more about how
|
||||
our solutions automate processes and engage users</a>.
|
||||
</p>
|
||||
<h2>Information Publicizing and Blogging</h2>
|
||||
<p>
|
||||
From its inception, the Web has been about information. Do you need to get information out about an upcoming
|
||||
event? Are you wanting to start blogging, or breathe some fresh life into an existing blog? Those are but a few
|
||||
of the problems that this solution solves.
|
||||
<a routerLink="/about/information-publicizing-solutions" title="Information Publicizing Solutions">Find out more
|
||||
about our information publicizing and blogging solutions</a> (including WordPress and statically-generated
|
||||
sites).
|
||||
</p>
|
||||
<h2>Web Services and APIs</h2>
|
||||
<p>
|
||||
Do you have a need for multiple computers to talk to each other? Do you have an interesting data set that you want
|
||||
to make available to the public? A web service or API may be just the solution for you.
|
||||
<a routerLink="/about/web-services-solutions" title="Web Services and API Solutions">Learn about web services,
|
||||
along with examples of current solutions</a>.
|
||||
</p>
|
||||
<h2>Legacy Data Sharing</h2>
|
||||
<p>
|
||||
Do you have data that's old — and by “old,” we aren’t talking “iPhone 6” old,
|
||||
we’re talking “this data
|
||||
<a href="https://en.wikipedia.org/wiki/Age_of_candidacy#United_States" title="Age of Candidacy (United States) | Wikipedia">could
|
||||
run for President</a>” old? Just because the information is in an older “legacy” system
|
||||
doesn’t mean it has to stay there.
|
||||
<a routerLink="/about/legacy-data" title="Legacy Data Sharing Solutions">Learn how our solutions can help get
|
||||
this data where you and your customers can access it more easily</a>.
|
||||
</p>
|
||||
<h2>Why Web-Based?</h2>
|
||||
<p>Web-based solutions have many advantages:</p>
|
||||
<ul>
|
||||
<li><p>They can be used just on a local, private network (an intranet) or on the public Internet.</p></li>
|
||||
<li><p>They are available to any device connected to the network.</p></li>
|
||||
<li><p>They require no special software; every device has a browser - which you're using to read this!)</p></li>
|
||||
<li><p>They can get your most critical needs met first, then evolved and improved over time.</p></li>
|
||||
</ul>
|
||||
<h2>What Is a “Bit Badger”?</h2>
|
||||
<p>
|
||||
<a routerLink="/about/why-bit-badger" title="Why Bit Badger?">Read the Bit Badger’s origin story</a>.
|
||||
</p>
|
||||
<h2>Solutions to Your Problems</h2>
|
||||
<p>
|
||||
We’d be happy to discuss your information technology needs, and which of our solutions are right for you.
|
||||
Just <a href="mailto:daniel@bitbadger.solutions">e-mail us</a> and let us know what we can do for you! You can
|
||||
also <a routerLink="/solutions" title="All Solutions">browse a complete list of our current and previous
|
||||
solutions</a>.
|
||||
</p>
|
||||
</article>
|
||||
<app-sidebar></app-sidebar>
|
||||
</div>
|
||||
@@ -0,0 +1,9 @@
|
||||
@media all and (min-width: 80rem)
|
||||
.home
|
||||
display: flex
|
||||
flex-flow: row
|
||||
align-items: flex-start
|
||||
justify-content: space-around
|
||||
.home-lead
|
||||
font-size: 1.3rem
|
||||
text-align: center
|
||||
14
bit-badger-solutions/src/app/pages/home/home.component.ts
Normal file
14
bit-badger-solutions/src/app/pages/home/home.component.ts
Normal file
@@ -0,0 +1,14 @@
|
||||
import { Component, OnInit } from '@angular/core'
|
||||
|
||||
@Component({
|
||||
selector: 'app-home',
|
||||
templateUrl: './home.component.html',
|
||||
styleUrls: ['./home.component.sass']
|
||||
})
|
||||
export class HomeComponent implements OnInit {
|
||||
|
||||
constructor() { }
|
||||
|
||||
ngOnInit() { }
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user